Should I have all the money in the world I would most likely spend a good part of the year in Ibiza. I've been to a lot of places in the Mediterranean (and other shores) and Ibiza is one of the most beautiful places in terms of nature, people and generally good vibes.
Equating Ibiza to sex and parties is like saying Amsterdam is nothing but rain or London is always foggy. There's some truth to it, but you'll be missing a whole lot if judging just by that
After suffering through the Hobbit movies, I would completely disagree.
Adding salt to the injury, these movies destroyed the story in the book that Tolkien apparently wrote specially for his children. Talk about taking care of a legacy.
I guess it was difficult to resist the temptation, with so much money involved. But I don't see any other justification for those 3 movies apart from penny squeezing
Christopher Tolkien had no say in the Hobbit films (or any other prior films). JRRT himself sold the rights to film adaptions of his works to United Artists a few years before his death. The GP is correct that the Tolkien Estate sold the rights for the TV show to Amazon literally months after Christopher retired as director of the Estate... granted planning and negotiations had probably been ongoing for some time, but Christopher would've been about 93 at the time so presumably he was not deeply involved by that point.
They were just a bad adaptation and I quit partway through. But there are lots of bad adaptations. Dune was pretty ill-served until the most recent. It happens. You watch or not and move on. As well as adaptations that are a lot better than the original work.
I think this shows how much HN is a bubble in itself.
Most discussions here happen around new/exciting/cool/weird technology. And don't get me wrong, I love those discussions! That's why I come here!
But reality outside of this bubble is people building and maintaining web apps as efficiently as possible and PHP hasn't stopped being very efficient. On the contrary, it's getting better with time.
Interestingly enough, Ruby (my personal interest, here) has been steadily gaining share in that chart year over year, despite not being "cool" anymore.
If you ask me, it's good to have a dose a reality from time to time!
It is not about efficiency , it is about legacy. You can count number of Perl scripts out there and conclude that Perl is still the most popular scripting/devops tool in the world
In PHP's case it's about WordPress which still being deployed at a very high rate. While the blogging thing isn't that much in focus anymore, WordPress + Divi + WooCommerce is an extremely common stack for setting up eCommerce sites.
An yes, then there's Drupal, Laravel, Symfony, and many others, and they're going strong too. Heck, even Joomla is actively developed even though it's probably small enough today to be considered legacy.
Facebook has done impressive things with PHP, but they are one single entity. WordPress is an entire ecosystem with millions of users, and while Facebook changing their underlying stuff wouldn't be noticed by most, I can assure you there would be a large amount of people who noticed if WordPress decided to switch to ASP.NET or something.
Kind of true, there are loads of companies that started out as a 1 or 2 person gig with a crappy wordpress site as their MVP, then they take on a full time php developer to make some changes and before you know it they are a few years in and are rebuilding their site in Laravel or Symfony.
>>You can count number of Perl scripts out there and conclude that Perl is still the most popular scripting/devops tool in the world
Perl is still heavily used. I wrote more than 2K lines just last week, lots of it is throwaway. But hey not many languages make it easy for you to write thousands of lines of throwaway code in hours.
It's still the most useful language in the backend/unix world. This comes from me, who actually writes lots of Python code. But I wouldn't use Python where I use Perl. It would just make me slow and it wouldn't get the job done just as well as Perl.
It's not used as frequently for web dev, or other places where Java is used. But it's very good at what it does. Glue language for the Unix world.
> Perl is still heavily used. I wrote more than 2K lines just last week, lots of it is throwaway.
Agreed. For any one-off (or occasional) task that in any way involves juggling text (which in Unix CLI world is nearly all of it), perl is still the fastest way to get done.
Back in '92 (roughly when I started using perl), its regex support was revolutionary. Today, all languages have decent string handling and regex support. And yet, none is quite so naturally well integrated as in perl. So here 30 years later, if I need to pick apart and recombine text, give me perl.
I wrote a bunch of scala code last week to fix problems in a service that we are actively working to replace. I consider this a "legacy" work, nothing to do with technology used
It's clear that legacy has a pretty strong influence, here, with Wordpress and other standard tools inflating PHP's numbers and Shopify doing the same for Ruby.
But, I'm pretty sure there's plenty of new projects being started nowadays in PHP, Ruby, Java, etc, because they're the most effective tool for the job.
It's just that this is not news. News is yet-another-standard-tool-written-in-rust.
Not always true. Is also about the best tool for the job.
Ex. I had to implement a task that would need to check if an image is similar to other image (not related to porn/csam).
I implemented it with just a few line of PHP and no 100+ package dependencies. How? I run a linux CLI app from inside PHP, super easy.
but, but , you can do it with node too,
- yes, but guess int he past in a node project, soem dev instead of calling ffmpeg directly he npm installed some shit package that called ffmpeg. The package was basic and it did not include or options needed , some other dev would have installed other package to get a new ffmpeg feature, /
I removed all those packages and done it directly.
My point is that we need to use the best tool for the job, if there is a CLI app or Java program/library that solves your problem a developer should present teh client the truth "I can solve your problem using this in 1 day or I can rewrite it in CoolLang and CollFramework and CoolPacakgeManager and CoolTranspilter with 100+ shit dependencies in 1 month. I am afraid many developers are choosing the last option to pad their CV and pump their ego.
I would say is also the ecosystem, PHP has a bit ecosystem and it can always use all the Linux applications (once in a project I integrated PHP with node program puppeteer) so there is no limitation, I miss more features in JS then I miss them in PHP.
Or, maybe developers who choose other languages are also competent professionals who make language/framework choices for good reasons. I have no considered opinion about PHP but one reason I have never used it for a web application backend is because I do a lot of coding that PHP is not well-suited for (high-performance, data intensive) and it is easier to write the web server in the same language I use for everything else.
Also, in general passing untrusted input to shell commands is probably a bad idea. FFmpeg has had many CVEs over the years and taking an upload from a user and piping it to a CLI command is asking for trouble. There are considerations beyond just doing the easiest thing that could possibly work.
>Also, in general passing untrusted input to shell commands is probably a bad idea.
This is why you escape the shell command arguments, but if you blindly npm install a shitty wrapper you probably hit the issue with security issues. Sure review of the dependency would be great but I did not seen many devs doing it, if they would have reviewed the ffmpeg wrapper would have noticed the simplicity and implemented themselves and on top of that learned some new stuff.
>Or, maybe developers who choose other languages are also competent professionals
I did not say that all of node developers are beginners,
I am saying that many developers are not using the right tool for the job but use the cool tool for the job and some developers just blindly npm install shit because this is the only thing they know.
And I can confess I was guilty of this, on a project I propose to use Qt4 over Adobe Air because I was fan Qt and hated Adobe , turned out in the end I was forced to use Adobe Air and I loved it, for what we were doing it was the best tool for the job.
HN is a super bubble, it's a great bubble because it's a bubble I am part of, but it's almost extreme sometimes how much of a bubble it is. Really any topic of PHP, security, Apple, privacy etc showcase the bubble.
I am sure the stats are somewhat off due to what others said about it being harder to detect Python, etc. But it's probably not that far off, this community greatly overestimates the usage of more "developer friendly" language combinations like Python+Django, etc.
What people really want is a solid CMS or off the shelf product they can tailor to their needs and since pretty much everyone of the most popular CMSs (Drupal, WordPress, Magento, PrestaShop) is PHP based this is no surprise.
That leaves a small portion of asp.net CMSs (Kentico, Umbraco, episerver, dotnetnuke, etc) and a bunch of hosted solutions (Wix, SquareSpace, etc).
I like your description. Mine is that HN is not so much a bubble, but an enclave of highly opiniated feuding camps that just can't stop themselves from having shouting matches with eachother.
It's a controversial opinion of mine, but many other languages have come and gone since PHP, yet it still dominates. With all the new alternatives nothing has taken over and it shows that stability and mature works better than change when there is not a critical need for it.
Modern languages have also time and time again forsaken the ideal of making development LESS COMPLICATED than prior languages, and this is why they don't take over markets. Creating more abstract languages just to do the same things that PHP, Python, Java, JS, and other "legacy" langs have accomplished (over many years) does not make sense. Too many people get credit for reinventing the wheel these days and it's a distraction from truly game-changing innovation.
Relevant and reliable function resides in a separate lane than innovative new solutions. They shouldn't be hyped and rushed to market as "PHP killers" simply because they generate buzz and new contract money.
And FTR... If you still have to compile code in 2021 prior to running it, you're burning a lot of extra valuable time off your life and away from your family in frustration just to find out that the advice on Stack Overflow was not relevant to your framework's new update, and you'll regret the lost years on your death bed... probably... Sorry, That had to be said... :P
Code compilation has saved me so many headaches that would have otherwise been discovered in production, so I can't say I agree with you there. That said the languages I compile also take 15 seconds so I don't experience that 40 minute compilation times some people have and that would probably sour my experience a bit. The language I'm talking about is Elixir fwiw.
All depends on the nature of your app of course... But I've managed to do pretty accurate simulations with modern tools in Stage environments, and to regularly sync my STAGE and PROD environments on high traffic sites with safer test results... Different strokes I guess.
Really? I hope not. Just because it compiles, doesn't mean it won't panic because of some weird state caused by a race condition buried deep in the code where a lock wasn't held when it was so desperately needed
I write native Apple software (Swift/UI/App/WatchKit), and my server stuff is PHP (and works great).
I like to spend as little time as possible on the backend. I totally admit its not my strong suit, so having a robust, highly-supported, standardized, performative, language like PHP, with a gazillion assistive resources and examples around, is nice. I've been writing stuff in PHP for over 20 years, so I sort of know my way around it.
I'll be expanding my Apple native stuff into the new "pseudo-reactive" realm of SwiftUI, but I don't really plan to keep growing my backend chops. PHP is doing fine for me. If I need anything else, I'll hire the talent.
Yeah, but who knows how many of those are “ghost ships” that were built for local businesses over 5-10 years ago, were never touched since, never got security updates, and now load slowly because there’s a bitcoin miner churning away in a subprocess because they got hacked 2 years ago.
To make a slightly problematic, somewhat poor taste analogy: 50% of the worlds houses (not a real stat, I’m lazy) have sheet metal roofs. All of the following are likely true:
- sheet metal roofs are wayyyy better than nothing for keeping the rain out. If you can’t afford anything else, definitely use them.
- Most people with sheet metal roofs would probably prefer something else, and would choose something else if the option was on the table.
- The prevalence of sheet metal roofs as a roofing material says less about sheet metal’s awesomeness as a roof than it does about factors that have little to do with sheet metal roofs (like global inequality).
- If you talk to construction workers in developed countries, they’d grant you that sheet metal roofing is quite prevalent worldwide, but they’re more interested in other materials and techniques that provide real substantial benefits.
Metal roofs last much longer than asphalt shingle roofs and are considered to be a superior material despite being a “legacy” roof. Asphalt shingle roofs dominate in the US simply due to cost and more roofers being familiar with the material.
How much of this is just the millions of Wordpress or Nextcloud installations? I’d be more interested in knowing how many unique apps or developers work on each language because in my experience I haven’t actually seen a single php developer other than Wordpress tweakers.
There are a lot of WordPress sites. The same site reporting the metrics on PHP also points out that WordPress is 42.5% of all sites [1].
That being said, I know a fair number of PHP developers. None of them are in SV or Seattle. They are in cities many have not heard of. They're all over. Some do public sites. Some do company internal web apps.
Take a project like Symfony, a PHP framework. It's popular but not the most popular. Now, take a look at the download stats for its packages [2]. They are large.
There is software development happening all over the world. A bunch of it is in PHP.
> That being said, I know a fair number of PHP developers. None of them are in SV or Seattle.
> There is software development happening all over the world.
I think this is probably the biggest part of the HN bubble: the idea that "tech hubs" like Silicon Valley make up all, or a supermajority, of tech workers.
I've never even visited the west coast, never lived in a town larger than about 20k people, and frankly never really want to live in a city. Yet I work in tech, and have my entire adult life. (At this point, I am, in fact, primarily a PHP programmer.)
And I'm hardly an exception.
Nearly every company over a handful of employees needs tech support, programming, a website, even servers managed. Many of these will hire internally. Others will turn to contractors—who are also locals.
Silicon Valley, with its high concentration of tech workers and ludicrous salaries, is very much the exception here, and a lot of HNers would do well to remember that, lest they end up looking as out of touch with the real world as Lucille Bluth asking about the price of a banana. [0]
I live in NY, but am not part of the NY "tech scene," because I find they are not particularly welcoming to me. I won’t go where I’m not wanted.
Not really a big deal. I'm pretty cutting edge, on the frontend (native apps for Apple systems, in Swift), but a bit stodgier on the backend (I use PHP). I’m not surprised at all by the survey results.
PHP works great for me. If I need something different (not an issue, so far), I'll hire it in. I'm actually fairly good at big projects in PHP. My code is maintainable and high-quality. It may not be “leet” PHP, but it works well.
There are plenty of custom PHP websites and devs that write them. I, too, still write fully custom (no framework) PHP webapps for customers where I don't expect to be babysitting the app after it's written, and where websockets and real-time interactivity is not necessary.
PHP is great fit for that, because all dependencies are part of the system updates in that case.
Yes - I wrote a messageboard in PHP 18 years ago whilst clutching an OReilly book in my hand.
It's definitely not well coded, but it works.
It's moved servers many times, changed OS, Webserver - and it's now running on my NAS.
I've maybe twice had to spend an afternoon tightening it up due to some PHP change - but broadly been maintenance/issue free.
For at least the last decade I've been pondering re-implementing it in some fancy new language - but as it just keeps working, it slides down the priority list.
That's the "secret" of PHP. It's 20 years later and it just works. Many other front-end development tools and frameworks have come and gone in that timeframe yet PHP persists. Why? Well, I'm not a PHP expert but it sounds like they care about backwards compatibility. You don't have to continually reimplement everything all the time, which both costs money and discourages further investment. There are reasons COBOL is still around 50+ years later.
"because in my experience I haven’t actually seen a single php developer "
With all due respect, that is one hell of a bubble :). Plenty of companies use PHP (not just WordPress) and there are plenty of PHP devs who work with core, symfony, Laravel etc.
PHP is battle tested and even though it has its quirks, you can never go wrong with it if you are looking to build a web application.
P.S: We are hiring web developers for our company and PHP experience is preferred considering our stack.
I worked almost 10 years doing PHP.
Only corporate apps (backoffices/frontoffices/services/batches, monitoring CO2 for train transports, GPS , invoices, train orders, electronic consignment notes ,sso&subscriber management for a magazine, bridges... ), not a single WordPress.
So at some point there were PHP developers and I met many. I lost interest in PHP when the industry moved to REST APIs and SPA though.
Hey! I also love PHP and Ruby. I was a fan of Rails until I discovered Laravel and I found it to be similar but better (and much faster). People who bash PHP should take a look at PHP 7/8 and what clean and professional PHP code can look like.
I suspect these reports also have a good 5-10 years lag time from when a language gets popular, early adopters start using & creating libs, and then finally actual companies start adopting it. From that point there's a lull of development to get the site up, and then a couple of years later everything finally blossoms and the technology shows up on this chart.
The Ruby dev market in Europe is hotter than ever.
Of course, that's in relative terms. It's nowhere near the size of the Java, JS or even Python market size, but demand is strongest than ever and salaries show that, too
Back in 2016 I quit my job as a QA tester to pivot back into my intended career as a software developer. (I had studied CS but got roped into QA as my first job out of school). I sat down and tried to build multiple rails sites as practice. I kept seeing all these Rails positions in the NYC area. I learned a few hard lessons after spending almost two years unemployed and running out my savings:
1. Yes there are lots of Rails jobs but they wanted senior or at least mid level people who learned the deep nitty gritty of Rails at other companies. Few companies were willing to hire you as entry level to work on the job. The few entry level jobs had an ocean of candidates from the bootcamps.
2. I hated looking at Ruby code. Coming from a Java/C# background in college, it just make no sense to me and was ugly. I learned that while there are a billion guides on how to build basic Rails apps, there is very little on doing more complex things. A lot of that knowledge is just spending the time in a job learning a lot of things you can't learn in a book.
Now that I have internalized MVC architecture much better now I have considered going back to Rails to learn what I couldn't comprehend back then but every time I think about it I think about all the horrible nights I was sitting in my basement depressed that I was forcing myself to learn this crap and getting nowhere.
3. I should have dropped it much sooner. Instead I dragged myself in misery day in and day out and entered a deep depression trying to get some position....anything in Ruby/Rails.
4. I even resorted to unsavory tactics such as super fuzzing my resume just to get my foot in the door and ultimately bomb final interviews when asked about the inner working of libraries such as ActiveSupport among others. (Like seriously? Did I have to read all the C source of Ruby to get some basic job?). This fuzzed resume got me in a position where I was getting a 90%+ callback rate and the majority of them led to the final technical interview where I would end up not knowing some Rubyism or having difficulty solving a Ruby question in their existing codebase. Many rejections were due to the fact that while I solved the problem, I didn't solve it in the "Ruby" way. I guess Java/C#/C ruined my brain. I am not worthy of Matz's greatness.
Eventually through sheer dumb luck I managed to get a Angular2+/Flask position at a super large oldschool company only due to my nice manager knowing nothing about the tech stack so he took a chance on me. I thank god for this opportunity as I was maxing out my credit cards trying to survive. This low stress position allowed me to fall in love with Angular and Python and I have never looked back on the horror that is Ruby/Rails.
Thinking about my experience now(and this is subjecting to my experience interviewing at dozens of NYC companies), I noticed Rails being used at all these silly hipster startups that mostly produce garbage anyway. I remember interviewing for this "art studio" that was producing a revolutionary camera system in partnership with an Italian company. The company was just one giant room with round tables where Rails people would be making the web backend that connected with their camera system. They produced the product and got rid of their Rails people a year later. That seems to be the nature of the ecosystem. I saw so much of that in the Rails community.
6. This experience taught me that the community of the language will evidently affect your day to day life and overall career prospects. The niche nature of Rails allowed people who got in super early to make massive mounts of money (hence all the Senior Rails job ads promoting 200K in NYC) but you are mostly stuck working for these "cutting edge" hipster companies and if you don't or want to fit that scene then you are SOL. Likewise Angular and Python attracted some startups as well as enterprise companies due to Microsoft's backing and its excellent library ecosystem for enterprise applications. The community is quite nice and has opened my eyes to what it is capable of. You can find startups using it or relax in an enterprise shop. Was a world of difference from Ruby/Rails.
Sometimes I shed a tear for losing almost two years of my life to this. But the reality is that I made many poor decisions from my college days up until I got this Angular job.
I'm not sure if the Ruby market has ever been better from the pov of devs looking to get hired. There's now a ton of companies with established revenue streams based on Ruby/Rails apps looking to hire, while simultaneously it seems like all the new grads have bought the "Rails is dying!" hype and are looking to invest their time in other techs. Also it seems like all the bootcamp types have moved on from Rails to JS which has only further dried up the incoming developer pipeline.
It doesn't help that despite the impressiveness of the 15 minute blog demo, Rails has always been somewhat difficult to get up and running, particularly on Windows, and it seems like that has only grown worse over time.
Agreed, in fact modern SPA stacks are incredibly inefficient.
And the corporate world move slowly.
And dev cost money. Most websites don't need more, they were fine 10 years ago and still are.
Although I'm not sure we have the whole story. I'm assuming we get high stats because of wordpress, which is not a good indicator of language popularity, but rather of platform popularity.
It could very well be that PHP is easier to distribute, and gets used in lots of groupware/industry-standard software that's deployed thousands of times across thousands of organizations. I'd imagine that kind of market share piles up after a while.
This is exactly it. Lower friction wins. You can just upload PHP scripts and go, while almost everything else requires many more installation steps or even monstrosities like Kubernetes.
The bulk of what I do is still, essentially, 'deploy to a folder'. There's some build steps, and a symlink swap from old to new, but that's still what it's doing. And I can still go edit a single file in a folder some place if I need to test/debug something. That's rare, but there are times when production is the only place an issue shows up (or... the only place you can replicate it - usually you can figure out enough from that to replicate locally later).
When interviewing developers, I always ask about their experience in handling sites large enough to comprise a farm, not just a single server. In all my years of searching, I've only ever come across one developer with such experience.
But here on HN, it makes it look like the multiple load balanced web and app servers we've got across multiple tiers, not to mention Docker and k8s, are on the small side.
There's definitely a big difference between those conversing here and "the unwashed masses".
I'm tempted to go even further and guess the truth is that even many of todays actual cloud deployments could probably have been better served by two to 7 beefy servers - or even a couple of virtul servers in many cases.
Well don't forget the biases that are encoded in these percentages (I'm presuming these stats are not normalized by throughput, or revenue). A ton of these websites are basically "some small-time coding contractor is contracted to build a site for X commerce business that "needs a website"" (think: the pizzeria down the corner, or the dry cleaners). If there's even any interactivity at all, it needs to be cookie-cutter. Probably there are small firms and individuals that are responsible for hundreds of these, and some medium sized firms that are responsible for thousands. Copy, paste, customize, check off with contractee, publish.
It might be 'bias', but if it was as easy to do this in other stacks, wouldn't we see hundreds of thousands of cookie-cutter/copy/paste sites in, say, .net? Or rails? Or node? That this is 'easy' with a PHP base speaks to the fact that many other stacks seemingly ignore the needs of many markets.
I seem to recall a perl CMS - was is movable type? - that required mod_perl. This certainly gave it a perf boost against other CMS, but the overhead in setting up and maintaining a mod_perl system, and dealing with making code updates, was huge compared to PHP. I think these qualities continually get overlooked, decades on.
But also consider that most of these projects are cost centers. Hn very much biases for people who are using tech as revenue (or at least core-value, in the case of not-necessairly-for-profit projects) props. It's understandable that the communities and tools should be orthogonal.
Laravel on PHP 8, especially with a few add-ons like Tailwind, Tailwind UI, and Livewire (for SPA-like stuff) is so efficient with so little code it's hardly funny.
I'm convinced if you are a typical medium-sized business trying to recreate that technology with Node, Express, React, and a billion NPM packages, your are doing things the unnecessarily hard way.
HN mostly has people making web applications. These statistics are about web sites. There is a bit of a blurry line between the two, but you for the most part don't hire a software developer to make a web site.
PHP has a huge market share in web sites, but much less in web apps.
"Ruby (my personal interest, here) has been steadily gaining share in that chart year over year, despite not being "cool" anymore."
I have a comment from yesterday that is (rightly) sitting at -4 (https://news.ycombinator.com/item?id=28501661) that seems relevant: The rise of Ruby on that chart can be directly correlated with the rise of Shopify.
Elsewhere they note that Shopify "accounts" for 3.9% of the top million websites. The bulk of Ruby's increase.
Though I'm suspicious of the accuracy of their numbers. Most modern tech stacks don't announce themselves in the way that PHP did, and they clearly used curated metadata to attribute some major content engines (e.g. Shopify = Ruby, Wordpress = PHP, Wikis = PHP, etc), which means that anything outside of the top identifiable content engines isn't going to have proper attribution.
Further, note that literally any use gets credited. Look at the "popular sites using Shopify" at -
Overwhelmingly they get the shopify/ruby credit for linking to a minimal checkout experience on a subdomain. That seems...incredibly dubious.
Still neat though. But what it really demonstrates is that product wins, not technology. Wordpress is clearly a winning product. Shopify is a winning product.
Ruby, the language, is almost as flexible and dynamic as Smalltalk. It's just that it didn't come with an integrated graphical environment like Smalltalk.
For a glimpse of "what is possible", take a look at TkInspect (1), a set of gems that I'm working on that provide some of the goodies of that GUI, like an interactive, graphical console, a live inspector, a class browser or turtle graphics.
At the moment it's not more than a toy, but it does definitely show what can be done.
I own the 3GB Manjaro edition of the PinePhone (same hardware as this one, AFAIK) and, while in theory you can do everything that you describe with it, it is hardly something you could use as your only smartphone for the day. (I still love it, though, and love hacking away with it!!)
However, as of today, there's a much better way of achieving what you're describing in an Android phone: Termux (1)
With Termux you can use an amazing number of regular Linux/UNIX tools, interface them with phone specific functionality (like GPS or other sensors) and still enjoy having a modern smartphone in terms of apps available, performance and battery life.
(Shameless plug: you can watch Termux in action in this talk from last year (2). It's centered around Ruby, but Python works just fine, too)
This is important, but sadly a lot of people don't seem to notice/care what Google is doing to Android. The question in my mind is whether the quality of devices like the Pinephone can get high enough before the functionality of Android drops below a point where certain things simply become impossible.
It's a shame we're losing so much useful functionality there.
Security is a worthy goal but getting rid of useful features just because Google wants to handhold Android users so much seems to me like throwing out the baby with the bathwater.
Personal experience: Around 2005 I was looking for a platform for a new web app, after some years out of development but having worked extensively with NeXTstep and EOF in the 90s.
After watching DHH's video and reading the Rails book, it reminded me so much of my previous experience with NeXT technology that I had no other choice but to go with Rails.
The dynamism of Ruby had a lot in common with ObjC's runtime. And reading about ActiveRecord at that time I also had the feeling that its authors had worked with EOF before.
All in all, NeXT built great stuff. I still own a NeXTstation Color that I got in 1992 (one of these days I should try to turn it on again). And it's a testament to the quality of that software that some pieces that I'm still running today, like Apple Mail, trace back almost directly to tools I started using back then (NeXTMail).
Yep, people don't often comment on how similar ruby and ObjC are, in fundamentals.
I think it's because both of them were so influenced by smalltalk, more than ObjC influencing ruby necessarily. But not sure.
But I'm still very curious if AR's creators knew EOF, yeah. I haven't found DHH mentioning it; not sure if there might be forgotten other person/people central to original AR architecture.
WebObjects itself was nice in many many ways (I think it's encapsulation of form handling is far better than anything anyone's managed in Rails)... but made a fundamental mistake in trying to keep a fundamentally stateful architecture and apply it to the web by putting what was effectively an opaque state ID in every single URL. This was a basically bad design for the web (although also provided for forementioned good encapsulation of form handling. :) ).
But yeah, the sense I get in my career is that we spend a lot of time trying to reinvent something that already existed, and getting close to being as good as it... then collectively moving on to the next language/platform and doing it again. With not a lot of progress. Up to and through the 90s, it seemed like there was actual progress in software design and architecture at the high-level, the level of affordances for developers to efficiently create reliable maintainable software, but it seems to me have stalled -- perhaps in favor of huge advances in more low-level stuff, better/different languages/language paradigms, etc.
This is ignoring the stereotype of the recent college grad or someone with just a couple of years experience who thinks they know everything. I see everywhere at my work. When you take into account that 90% of software developers of all ages are just not that good at their jobs, things start to make a lot of sense.
Most of the commenters focus on a stronger financial position and/or industry knowledge as reasons to be a successful entrepreneur beyond the barrier of 40s.
But the man himself provides reasons which I find much more profound (and that being in midforties myself, I'm glad to relate to:
> Your forties are the moment when you start to become aware. It's just the beginning. I've always believed that to confirm your way of thinking takes time. It takes experimenting. You have to confront different chapters of your life
Touched me deep enough to create an HN account just to comment.
I often find people in their 40s' to be deeply troubled, tired, and grappling for power or ego.
Anecdotally I have encountered more people in the 50s-90s range with a calmer, wiser, and altruistic awareness of self and others. I imagine it has something to do with the thought of mortality nullifying their materialistic or egoistic pursuits, and some sort of realization that we're all here together on a big rock hurdling through space so maybe baking a batch of cookies for friends is a good idea worth spending time on.
Of course, there's plenty of people in their 40s experiencing the struggles you describe. But, as a matter of fact, I've met as many of them in the 20s and 30s range with the same problems (maybe not so tired, but troubled and egomaniac nonetheless).
In the context of entrepreneurship, however, I find that those traits are much less prominent, regardless of the age.
In my case, today I just sold my part of the company I founded 10 years ago to my cofounding partner. Not a big, glorious exit, BTW. Just the opportunity to try again, and get better results this time.
Being 46, I do feel much more aware now that I felt 10 years ago. Aware of my strengths and aware of my limits. And aware of my motivations.
However, I must confess that, ten years ago, I had the same image that you describe about fortysomethings. That's why I decided to start my own company then, to avoid becoming one of them.
(Disclaimer, or self-indictment, or something: I am in my early 40s.)
Of course we are making incredibly broad generalizations here. But what part of what you are saying is incompatible with the post to which you reply?
Self-awareness is frequently painful. Not everyone reacts the same way, or well. Personally, I do find that I'm reflecting differently than I used to on choices I've made, opportunities missed, times I've been less than the human I want to be, and it isn't all zen gardens and rainbows. People react to disappointment, shame, unfairness, etc. differently, and lashing out, trying to make up for lost time, and far more inexplicable reactions are all pretty common, I think.
Not there yet, but I certainly hope that by the time I hit my 50s, I will have gained some equanimity about the more painful things in my life.
And if not, I can always take up whacking the kids with my cane.
Meta question. I only see upvote icons for the top comment and its first child. I see both up and down vote icons for children lower than that. Can anyone explain the logic?
I understand there is some logic in the voting mechanism to prevent flame wars. But this thread is over a day old. Whatever algorithm was in place here annoyed me enough to write this "meta" post and likely get downvotes for doing so.
I think the key is the quote says "...start to become aware. It's just the beginning..." In your forties, many have teenagers or those on the cusp on college, so I think the shift is moving from provider to wanting a legacy, and what you described is the bit of turbulence that comes with that shift.
Equating Ibiza to sex and parties is like saying Amsterdam is nothing but rain or London is always foggy. There's some truth to it, but you'll be missing a whole lot if judging just by that
Edit: typo