Live data from Hacker News

Holding a program in one's head

paulgraham.com

131–136 of 136 posts

Re: Holding a program in one's head

#132
I consider program brevity key to holding the problem in ones head, and the key to running a successful IT operation, particularly a small IT business. However, it would seem to me that the mainstream has been going in precisely the opposite direction.

In my opinion, there have been only two significant developments in mainstream languages in the last 50 years - structured programming (if..then..else) and object orientation. The operative words are MAINSTREAM and LANGUAGES, as there have been some very innovative and terse non-mainstream languages.

In the beginning, there was FORTRAN. You forced your problem to fit in a series of matrices and got the job done, usually quite efficiently. Add to Fortran structured concepts, and sooner or later you get Pascal, PL/I, and C. C introduced pointers - for better or worse, programmers finally had time to get really creative in solving problems by inventing all sorts of data structures - some legitimate, some a distraction from the problem. Bigger code. Add to this rampant object orientation, one method per class, and the ability to really go overboard with content vs. form. Form is winning. Bigger programs.

Although not part of a language, these days with Java, .Net, and so on, it is not possible to get by without a heavy duty IDE - Eclipse and Visual Stupido. These tools help you navigate a problem which you can no longer possibly load in your head, hopefully you can get a little part of it.

To me, the place where there has been the most progress, and outside of programming language design proper, is in the field of memory management and garbage collection.

Maybe everything I know is wrong. But in the last 20 or so years, I have never seen a programming language which stressed clarity through conciseness. It's all starting to be more like COBOL. Is this what the world really likes?

Re: Holding a program in one's head

#133
[SIZE=3][B][URL=http://www.replica031.com/]Replica Watches[/URL] [/B][/SIZE] [SIZE=3][B][URL=http://www.handbags-wholesaler.net/]Wholesale handbags[/URL] [/B][/SIZE] [SIZE=3][B][URL=http://www.cnreplicas.com/]Replica Handbags[/URL] [/B][/SIZE] [SIZE=3][B][URL=http://www.sales-watches.net/]Replica Watches[/URL] [/B][/SIZE] [SIZE=3][B][URL=http://www.watches-collection.com/]Replica Watches[/URL] [/B][/SIZE] [SIZE=3][B][URL=http://www.21replicawatch.com/]Replica Watches[/URL] [/B][/SIZE] [SIZE=3][B][URL=http://www.watches-brand.com/]Replica Watches[/URL] [/B][/SIZE] [SIZE=3][B][URL=http://www.aaa-replica-watch.com/]Replica Watches[/URL] [/B][/SIZE] [SIZE=2][B][URL=http://www.replica031.com/Replica_Watches/Louis_Vuitton_Repl...]Louis Vuitton Replica[/URL] [/B][/SIZE] [SIZE=2][B][URL=http://bulova.watches-collection.com/]Bulova Watch[/URL] [/B][/SIZE] [SIZE=2][B][URL=http://www.watches-brand.com/alange-sohne-watches.html]Replica A Lange & Sohne Watch[/URL] [/B][/SIZE] [SIZE=2][B][URL=http://www.replica-watch-shopping.com/longines_replica_watch...]Longines Replica Watches[/URL] [/B][/SIZE] [SIZE=2][B][URL=http://www.replica-watch-shopping.com/oris_replica_watches/o...]Oris Watch[/URL] [/B][/SIZE] [SIZE=2][B][URL=http://www.wholesale-watches.org/accutron-watches.html]Accutron Watch[/URL] [/B][/SIZE] [SIZE=2][B][URL=http://www.replica-watch-shopping.com/breitling_replica_watc...]Fake Breguet Watch[/URL] [/B][/SIZE] [SIZE=2][B][URL=http://www.21replicawatch.com/Tissot_Replica_Watches.html]Fake Tissot Watch[/URL] [/B][/SIZE] [SIZE=2][B][URL=http://www.wholesale-watches.org/tag-heuer-watches.html]TAG Heuer Watches[/URL] [/B][/SIZE] [SIZE=2][B][URL=http://www.fashion163.com/Oris.html]Oris Watches[/URL] [/B][/SIZE] [SIZE=2][B][URL=http://ebel.hotwatch.org/]Ebel Replica[/URL] [/B][/SIZE] [SIZE=2][B][URL=http://www.fashion163.com/TAG_Heuer.html]Replica TAG Heuer[/URL] [/B][/SIZE]

Re: Holding a program in one's head

#135
This is a great essay, makes me feel more on track than disorganised. Point 2, work in long stretches and the fixed cost of re-visiting a program - I think I'll show this to all those who interupt me and that don't understand why I don't really seem like I'm listening! This essay also explains part of why so many big companies are producing code that from a user who can program, you end up thinking "I could do better myself..."

Re: Holding a program in one's head

#136
I agree.As a hobyist(semi-professional) I have been programming in assembler for 30 years and in the past few years in C for embedded PIC microcontrollers.A difficulty arose when I decided to produce a Book incorporating several of my projects including the source code.Of course,I never did comment each line of code as I was taught by my tutors - no time to do that if I am carrying a program in my head and eager to translate the algorithms in my brain into source code.When it came to writing comments for the source code in my book,I was completely stumped -it meant I had to reverse engineer my own code that was created several months or years ago!.No way was I prepared to do this - the contents of my brain at the conception of my software could never ever be replicated.
Post reply on HN