Simon Willison’s Weblog

Subscribe

Items tagged programming in Sep

Filters: Month: Sep × programming × Sorted by date


elite-source.asm—annotated source code for Elite on the BBC Micro (via) Mark Moxon has annotated every single line of the source code for Elite on the BBC Micro, and his annotations are so clear and in-depth that I can follow it despite knowing next to nothing about assembly code (and certainly nothing about writing it for the BBC). # 28th September 2020, 2:30 am

What are some techniques, workflows, thought-processes etc. you would do as an experienced web-developer (front-end/back-end) that a new web developer might benefit from?

Learn the Chrome Developer Tools inside out, and live in them—especially the interactive JavaScript console, which can be a huge boon to your productivity.

[... 56 words]

Should a beginner to web development start out with Node.Js?

Maybe. One of the things I like about Node.js is that the raw abstraction it provides over HTTP is much closer to how the actual protocol works than the abstractions provided many of the more widely used frameworks such as PHP, Django or Rails. That might actually make it an effective learning tool—I’d be interested in hearing from some web developers who learnt Node.js as their first server-side technology.

[... 87 words]

What are some resources to read when designing a new client-server application layer protocol?

I suggest avoiding designing a custom protocol and using Protocol Buffers, Apache Thrift or Cap’n Proto instead.

[... 40 words]

What are some of the best programming/technical questions on scalability?

“How would you architect Twitter?”

[... 21 words]

How is a dictionary (key value) related to a hash?

The following terms describe essentially the same data structure across a number of different languages:

  • A Perl hash
  • A Ruby hash
  • A Python dictionary
  • A Java Map (an interface used by HashMap and others)
  • A Lua table
  • A JavaScript object (if you ignore object prototypes)

[... 56 words]

Is it bad practice to have a variable that has the same name as a function?

Yes, it’s definitely not a good idea. In Python functions and variables share the same namespace, so if you create a variable with the same name as a function you won’t be able to call that function.

[... 93 words]

What is a development framework?

The most useful distinction, in my opinion, is to think about the difference between a framework and a library.

[... 271 words]

Did Mark Zuckerberg have any knowledge on building scalable social networks prior to starting work on Facebook?

I’m going to bet he didn’t have this knowledge, simply because back when he launched Facebook in 2004 almost NO ONE had this knowledge—there simply weren’t enough “web scale” products around for the patterns needed to run them to be widely discussed.

[... 143 words]

Should I use Dropbox instead of Git for 2 coders? In terms of going really fast and working on things at the same time, I’m thinking it may be uber productive to use Dropbox for it’s instant syncing instead of Git/Github. What are the pros/cons?

Dropbox is definitely the wrong tool for this—you’ll find yourself running in to all sorts of weird problems very quickly if you attempt to use it this way.

[... 119 words]

Will Redis support per-database persistence configuration?

I don’t know if that’s on the roadmap (you’d need to ask antirez on the mailing list or Twitter), but it should be easy enough to run multiple Redis instances with different settings—especially on a multi core machine.

[... 52 words]

Reia. The most common complaint I see about Erlang is the syntax. Reia is a Python-style scripting language (with a dash of Ruby) that runs on the Erlang virtual machine. Looks promising. # 25th September 2008, 6:12 pm

Large codebases are the problem, not the language they’re written in. Find a way to break/decompose big codebases into little ones.

Bill de hÓra # 27th September 2007, 3:11 pm

Want To Learn Web Programming? Write A Blog Engine. I couldn’t agree more. Weblogs are an ideal starter project—simple enough to get your head around, complex enough to teach you a bunch of important lessons, ideally suited for eating your own dog food. # 20th September 2007, 1:17 pm

An Introduction to Erlang. Erlang gets the ONLamp tutorial treatment from Gregory Brown. # 13th September 2007, 5:47 pm