What we lost (now that web programming is mainstream)
Sunday, 20 April 08
Something like eight years ago I lost my job at Linuxcare since they simply closed the European operations. I was a security / system programming /embedded guy there together with a few friends of mine that were (and are) very smart developers, but we all ended without a job.
Since I'm from Sicily and I didn't liked the idea to live in the north of Italy I had to become a freelance developer (that turned out being a very fortunate thing for me), and the only market where it was possible to make money was web programming in my area: this was very sad for me since I had a background in system programming, very high level programming languages and algorithms and most of my work was with C, Scheme and Tcl at the time (now I use C and Ruby instead): to switch to web programming and PHP was like shooting my technical-self, but the bills were there so I did it: back then web programming was regarded as awkward from the skilled programming community.
It was mostly a boring task about constructing web interfaces with a DB as back end, and the actual data processing (that's the computer science part of algorithms and great code) was minimal.
The most interesting thing remains to write a framework :) (this is why there are so many frameworks around, people like to write them more than actual applications) unless you are lucky enough to deal with an application where the web part is just the interface to the user, take Google for example, but this is of course a very little percentage of all web applications, including the ones having success.
Fifteen/Twenty years ago to approach programming meant to start hacking with C, writing some cool demo accessing directly with VGA registers, learning algorithms and data structures. This is the background were the star developers of today grown, now that everything is an hash table, some nice looking XHTML and few ugly but optimized SQL queries I wonder what the level of developers will be in ten years, and I've no reasons to be optimist.
Not everything is bad of course, lately a lot of developers switched to Ruby, Python and other elegant and much more abstract programming languages so at least developers of today are exposed to things like functional programming a lot more than in the early days and this is a great thing, still algorithms, data structures, and low level programming are marginal and it's hard to become a good developer without being exposed to this concepts.
You can Vote/comment this article on reddit
Since I'm from Sicily and I didn't liked the idea to live in the north of Italy I had to become a freelance developer (that turned out being a very fortunate thing for me), and the only market where it was possible to make money was web programming in my area: this was very sad for me since I had a background in system programming, very high level programming languages and algorithms and most of my work was with C, Scheme and Tcl at the time (now I use C and Ruby instead): to switch to web programming and PHP was like shooting my technical-self, but the bills were there so I did it: back then web programming was regarded as awkward from the skilled programming community.
It was mostly a boring task about constructing web interfaces with a DB as back end, and the actual data processing (that's the computer science part of algorithms and great code) was minimal.
Now web programming is mainstream
... and fortunately it's better than it was ten years ago: now web applications are much more an art involving the ability to design nice user interfaces and about picking the right features. Still what happens under the hood of web applications is many times not interesting enough: take reddit or even a much more complex application like ebay, if you take away scalability I bet it is very hard to discover some very cool algorithm inside.The most interesting thing remains to write a framework :) (this is why there are so many frameworks around, people like to write them more than actual applications) unless you are lucky enough to deal with an application where the web part is just the interface to the user, take Google for example, but this is of course a very little percentage of all web applications, including the ones having success.
Fifteen/Twenty years ago to approach programming meant to start hacking with C, writing some cool demo accessing directly with VGA registers, learning algorithms and data structures. This is the background were the star developers of today grown, now that everything is an hash table, some nice looking XHTML and few ugly but optimized SQL queries I wonder what the level of developers will be in ten years, and I've no reasons to be optimist.
Not everything is bad of course, lately a lot of developers switched to Ruby, Python and other elegant and much more abstract programming languages so at least developers of today are exposed to things like functional programming a lot more than in the early days and this is a great thing, still algorithms, data structures, and low level programming are marginal and it's hard to become a good developer without being exposed to this concepts.
You can Vote/comment this article on reddit
Do you like this article?
Subscribe to the RSS feed of this blog or use the newsletter service in order to receive a notification every time there is something of new to read here.
Note: you'll not see this box again if you are a usual reader.
Subscribe to the RSS feed of this blog or use the newsletter service in order to receive a notification every time there is something of new to read here.
Note: you'll not see this box again if you are a usual reader.
Comments
20 Apr 08, 17:05:59
On my home page there is my Skype contact information. Would you get in touch, please?
20 Apr 08, 17:11:22
@Gene: sorry but the url appeared to be a way to promote your product. You can get in touch with my writing an email at antirez at gmail --dot-- com if you like,
20 Apr 08, 18:37:31
interesting read. I do feel that web programming is in a way "less complex." hopefully, platforms will become more advance.
20 Apr 08, 19:19:36
I seem to remember asm coders making similar complaints about C and OOP after that.
20 Apr 08, 19:25:59
You know, I am looking a this from a completely different angle. I started out on web apps and now find them boring and am starting to look 'under the hood' into the really complex stuff (open source is great for this). I can understand you lament, because there is some really cool stuff going on when you get away from you 15,000th data class.
20 Apr 08, 19:28:27
I wish we hadn't lost smalltalk along the way. Most of the "innovations" nowadays are echoes from a forgotten past.
20 Apr 08, 20:57:40
"how does writing 'limone' prove i'm human? i assume this is a joke."
hahahahaa this made my day :)
i should code a bot that asks questions like these too
hahahahaa this made my day :)
i should code a bot that asks questions like these too
20 Apr 08, 21:08:27
@Ziggy, I agree with the point but the analogy isn't perfect. The difference there is that C and OOP programmers could do nearly exactly what the ASM guys were doing before. You can do just about anything in C, from writing an OS, a game to run on it, a video driver to show the game and plug into the OS, and any other service or application, such as a web server or word processor. With PHP you can, well, cobble together a certain class of applications--usually database backed web apps, with a RESTful modality. Sure, you can layer on attempts at MVC or add some appearance of being dynamic with AJAX, but it's still running on the same request/response substrate.
20 Apr 08, 23:19:24
Last month my brother-in-law told me "There's a lot of php work out there. You don't even have to think to do it..."
That's what I miss, and that's what's wrong with the computer biz today.
That's what I miss, and that's what's wrong with the computer biz today.
21 Apr 08, 01:55:23
this is the same as saying vb was inferior to c, c++, etc. or , that vb developers are not real programmers, etc.
21 Apr 08, 03:29:45
the thing is, you keep so busy just maintaining what you've got it's hard to stop and actually innovate
21 Apr 08, 11:47:43
The hardest part of web programming is the broken tool set. And the organizational obstacles to improving the tool set. Standards at both ends of the wire mean that you can't innovate in isolation.
OS vendors are held back by legacy apps, but can innovate UI's and some API's. Web development is held back by a different configuration of obstacles. Legacy protocols and standards.
Writing apps on a standalone OS is the environment with the best support (debuggers, languages, IDE's). Lower down are embedded systems (no run time support, less hardware) and web programming.
HTML and CSS are stretched beyond their limits. CSS is particularly obsolete and buggy. Network delays dominate all designs.
OS vendors are held back by legacy apps, but can innovate UI's and some API's. Web development is held back by a different configuration of obstacles. Legacy protocols and standards.
Writing apps on a standalone OS is the environment with the best support (debuggers, languages, IDE's). Lower down are embedded systems (no run time support, less hardware) and web programming.
HTML and CSS are stretched beyond their limits. CSS is particularly obsolete and buggy. Network delays dominate all designs.
22 Apr 08, 08:11:20
really? but surely you have to compromise yourself with what's in the mainstream and earn!!!! :)
07 Nov 08, 09:40:43
I could handle the dull if it wasn't so hard and dull ! I use Java for a large coporation and you need pages and pages of it and XML just to do the simplest of things. Years ago we would have used a 4GL to write a client/server app that would be dull but at least dull and easy.
I've tried Ruby and it's easier but it's a script language which means that it'll never be taken seriously.
What we need is a killer Scheme framework like Rails and then we'd all be happy again.
I've tried Ruby and it's easier but it's a script language which means that it'll never be taken seriously.
What we need is a killer Scheme framework like Rails and then we'd all be happy again.
09 Jan 09, 18:18:16
seems like, the 'higher' the level, the easier it is to break. and the more time is required building, debugging, rebuilding, 'improving', etc., etc. timekill.
17 Aug 09, 11:14:15
A C/fortran90/python programmer who has only recently started web programming (I appreciate I am therefore in no position to say too much)...
I think that to say web programming is dull is proabably not fair - but to say web programming of sites and pages is dull IS fair. I'm sure that there is plenty I can do with these languages but I like programming - not designing
I think that to say web programming is dull is proabably not fair - but to say web programming of sites and pages is dull IS fair. I'm sure that there is plenty I can do with these languages but I like programming - not designing
22 Feb 11, 16:53:48
not that i do web apps, i do c++ for a company that owns its own proprietary data crunching app
it would suck to only do web stuff
hahahhahaah