Live data from Hacker News

Software in 2014

tbray.org

11–20 of 265 posts

Re: Software in 2014

#11
It’s a pity some people still build important apps in PHP...

I wonder how that could be. It's almost like people chose to use PHP and it works for them. Like they made an informed decision and actually ended up going with PHP. Maybe they are just too dumb for their own good. Or maybe PHP is actually a perfectly sane choice for lots of cases outside of your FP ivory tower.

Re: Software in 2014

#12
"NodeJS isn’t really functional, but if everything’s a callback and you’re single threaded, who cares?"

Anyone could elaborate on what this actually means?

Re: Software in 2014

#13
post #9

The author does not even touch on the ease of use for paying for content; in the case of in-app purchases the walled gardens are far ahead of the open web. I'm not quite sure of what to make of his claim that he does not know of anyone who is making money from the walled gardens. Epic Games famously stated that Infinity Blade actually makes them more money than Gears of War when figured on a man-years vs revenue basi…

I wouldn't say that. Subscriptions are far easier to take on the web.

In app purchases are usually pretty optional as is content.

Re: Software in 2014

#14
Software engineers are typically good at building things meant for other engineers. That's why some of the most robust, rock-solid, reliable pieces of software engineering are, e.g. OS kernels and language compilers. So Tim Bray is right in saying that we needn't worry about the server side. The server side is in good hands.

Also true that the client side sucks, and I see only one way of fixing it: engineers have to work in a highly disciplined, tyranical kind of an environment. For example, the reason you don't see a lot of technical error messages on iOS (and you do see them a lot on Android) is just that: someone has to constantly remind the engineers that software they are making is meant for humans, not engineers.

Re: Software in 2014

#15
post #5

"It’s a pity some people still build important apps in PHP..." Getting real tired of seeing these baseless statements from so called software professionals. Here is an off-the-top-of-my-head list of features of modern day PHP: * yield * event * pthreads - yeap, real threads. * closures (including support for $this) * consistent hashing api * "finally" added to try-catch * empty() now supports expressions, rather than…

Those are great features.

However the objection people, including myself, have with PHP is that the legacy stuff is inconsistent junk.

I still use it on occasion but it pains me.

Re: Software in 2014

#16
post #12

"NodeJS isn’t really functional, but if everything’s a callback and you’re single threaded, who cares?" Anyone could elaborate on what this actually means?

Javascript does not have threads, so the only way to use it on the server with decent multiuser performance is with async I/O and callbacks. So he's saying people are using NodeJS because it made it possible to write server-side apps, regardless of its other features.

Re: Software in 2014

#17
His point about web vs iOS vs Android hit home with me. I've been a pure iOS developer for several years now, but the constant nag on me is to support Android. I assume it's the same for people that know the Android side. Unfortunately, it's not a 5 minute job to port over... if you take pride in building something great for one platform, you'll want to do the same on the other, but they have quite different paradigms, not to mention requiring a separate language and device set.

I guess in the past (on desktop) this wasn't as much of an issue because Windows had such a large market share.

Re: Software in 2014

#19
Notice how everything he writes about mobile development is wrong?

>First of all, you have to do your mobile development twice

Nope, there are plenty of frameworks with large user bases, both OSS and with corporate backend to do it once. From Xamarin to PhoneGap. Especially 2D game developers are spoiled for choice.

>The devices are memory-starved, CPU-starved, and battery-starved.

The devices have never been better (obviously), and currently pack a 2005 era laptop power in the size of pack of cards and 1GB or more of memory. And the battery lasts the whole day, at least with the devices I'm familiar with.

>You don’t get a choice of languages; if you hate both Java and ObjC, get another job.

Really? Because there are iOS bindings for all popular languages (and I've used several) and I'd guess there are Android bindings too. Now, one can say that to be a great developer you also have to know Obj-C (which I'm familiar with), but that's in no way a prerequisite, just a nice-to-have. Plenty of people have built amazing things without learning Obj-C.

>Unit testing is a bitch.

Haven't found it such. Except if he means with all the Android flavors? That's orthogonal and inherent to mobile.

>Fortunately for your users but unfortunately for you, the UX-quality bar on mobile is high and there is no fast or cheap way through; it requires inspiration and iteration.

And that belongs in a list of reasons "mobile suchs" (sic), why?

>You can’t make money. Seriously, Apple is always talking about the billions and billions they pay out of the app store, so why is it that I don’t know anyone who’s making serious money on mobile apps?

Perhaps you don't have a lot of friends? Or friends in the right circles? Because for a market that "can't make money", they just paid $10 billion to developers.

Re: Software in 2014

#20
post #12

"NodeJS isn’t really functional, but if everything’s a callback and you’re single threaded, who cares?" Anyone could elaborate on what this actually means?

One of the benefits of "really functional" code is that without lots of side-effects and mutable state, it is easy to parallelise things. But if "you’re single threaded" as node.js is, you aren't going to get those benefits anyway, s it doesn't matter.

There are performance benefits to the asynchrony that node.js's callbacks give you - i.e. the single thread that you have doesn't block waiting for things to complete and can handle other requests in the meantime. But this isn't really parallelisation.

Post reply on HN