News for hackers. Stuff that matters.
Re:Ask HN: What is the future of back-end development? by mabbo on Friday August 12, 2016 @07:30AM (#12274715)
Some people don't like the word much, but "serverless" is going to become a bigger deal.

You'll write your code, complex or simple; you'll hand it off to some cloud system; you'll write a bit of configuration; you're done. Likely the configuration part will become less and less required.

You won't think about hardware, scaling, load balancing, etc, it will just happen for you. The data store being used will be abstracted away so that you don't know/care much about who provides it. Configuration problem.

Containers, AWS Lambda, these are just the first course of this meal.

Why? Because developers are expensive. Time spent doing anything other than the critical piece of writing business logic code is time wasted, and longer time to market.

That's how I see the future of the server side.

Re:Ask HN: What is the future of back-end development? by scrollaway on Friday August 12, 2016 @08:09AM (#12274922)
This model isn't "serverless", it's PAAS. It's not much of a future. Heroku is useful for prototyping, not scale. (Edit: Doesn't mean it can't be more popular though - the web is full of prototypes)

"Serverless" as in AWS Lambda has very specific use cases. The people who are serving websites on Lambda or something are not only doing it wrong, they are wasting money while locking themselves in to an architecture that doesn't fit their app.

I say this as a heavy Lambda user (https://hearthsim.info/blog/how-we-process-replays/). Lambda is super useful if you have to scale CPU-heavy tasks. I do think that model will play a big role in the future, but I definitely do not think it'll be the go-to model for backend. It's a complete paradigm change.

Re:Ask HN: What is the future of back-end development? by bjinwright on Friday August 12, 2016 @05:16PM (#12278865)
It depends on what framework if any you choose to serve websites with. If you something like Chalice or Serverless then yes you are stuck with Lambda. But you use something like Zappa (https://github.com/miserlou/Zappa) that is basically converts API Gateway's request object to one that is WSGI compatible then you can take your app and skip down the road if you get ticked off with Lambda. The Heroku comparison one isn't a fair one either. The waya you pay for Heroku dynos is very similar how you pay for EC2 or any other VM. You are billed by the microsecond that part is very important and while technically you have a 100 req/s limit to start with it is a soft limit if you ask to have it removed. It is probably more useful to compare it to Google App Engine but even that isn't fair.
Re:Ask HN: What is the future of back-end development? by paulftw on Friday August 12, 2016 @08:41AM (#12275098)
People host their blogs on AWS lambda for less than dollar per month [1] compared to "standard" $5 or so for VPS. How's that a waste of money? Docker and containers are also a paradigm change, but the world seem to have adopted it just fine.

[1] https://news.ycombinator.com/item?id=11644042

Re:Ask HN: What is the future of back-end development? by scrollaway on Friday August 12, 2016 @09:32AM (#12275455)
That's not website hosting, it's comment processing. Lambda is doing input processing, not serving a site. It's clever, although if I just wanted comments I'd just use disqus and spare myself the trouble.

S3 is hosting the site. S3 is awesome for static site hosting, in fact. I also use it.

Re:Ask HN: What is the future of back-end development? by dsq on Friday August 12, 2016 @11:34AM (#12276484)
Whenever I'm behind a corporate firewall, which is often, I find that a lot of third-party services like Disqus are blocked. At those times I would have preferred the site to host it's own comments. Generally speaking corporate firewalls block a lot of stuff by default and the sysadmins don't bother to try and differentiate.
Re:Ask HN: What is the future of back-end development? by scrollaway on Friday August 12, 2016 @11:48AM (#12276583)
I appreciate the conendrum but I don't think people running the sort of static blog you host on S3/github pages care about overbearing corporate policies.

If I bothered setting up my own blog, I certainly wouldn't spend a bunch of time setting up comments on Lambda just for my two corporate-firewalled readers when I can just use a hosted solution. That is, if I even cared about comments in the first place. There's just much more interesting things to work on, with and without Lambda.

Re:Ask HN: What is the future of back-end development? by cgarvis on Friday August 12, 2016 @10:40AM (#12276040)
Hosting your blog using AWS Lambda is over engineering and still not the cheapest solution. Host your static files on S3 or your CMS on Heroku and put Cloudflare in front of it. This solution comes with auto scaling, SSL, and HTTPS and is completely free
Re:Ask HN: What is the future of back-end development? by Keats on Friday August 12, 2016 @09:01AM (#12275230)
That link looks it's S3 doing the hosting and a lambda function only for contact forms, not hosting the blog on Lambda.
Re:Ask HN: What is the future of back-end development? by fermuch on Friday August 12, 2016 @09:16AM (#12275330)
You're still paying only a few cents.
Re:Ask HN: What is the future of back-end development? by chii on Friday August 12, 2016 @09:24AM (#12275402)
If you could host via s3, why not use GitHub.io and do it for free?
Re:Ask HN: What is the future of back-end development? by brianwawok on Friday August 12, 2016 @11:19AM (#12276379)
Everyone has their reasons, but if it is something I actually cared about I would prefer to pay money for it. Generally things that cost money, even 5 cents, have better uptime than "free" stuff.
Re:Ask HN: What is the future of back-end development? by mabbo on Friday August 12, 2016 @09:04AM (#12275250)
Consider the problems that both Lambda and Containers/PaaS solve for you: ignoring infrastructure. It's there, sure, but I don't care much about it.

Now take that idea to the absolute extreme. I write code, I push it into the cloudy-cloud machine, and it's serving clients immediately.

Re:Ask HN: What is the future of back-end development? by collyw on Friday August 12, 2016 @09:22AM (#12275378)
As someone that knows how to set up a server, I found Heroku a lot more difficult to get a Django app running than on a "normal" server. And a lot more of a PITA to debug.
Re:Ask HN: What is the future of back-end development? by kisna72 on Friday August 12, 2016 @10:26AM (#12275896)
I had the same experience as a django novice until I started understanding how django works. Its actually a lot easier once you know some of the pieces eg. dj-database-url. I realized I had issues because I didn't understand how all the pieces fit together. ALso.. they have a template that you can download which essentially solves all the issues. Nowadays I always start with their template. or even if I have the app written, I will download django template from heroku, and plug in my apps to it.
Re:Ask HN: What is the future of back-end development? by mabbo on Friday August 12, 2016 @03:41PM (#12278225)
Then Heroku aren't the solution either. But they're a step towards it. It's all attempts to get it right, wild swings in the darkness. Someone's going to smack it hard in the head and we're all going to ask why we didn't think of that before.
Re:Ask HN: What is the future of back-end development? by aptwebapps on Friday August 12, 2016 @09:57AM (#12275642)
What about the second time you ran a Django app on Heroku? But Heroku is not even in `mabbo's first course (maybe the appetizer?) so that's slightly a straw man.
Re:Ask HN: What is the future of back-end development? by StavrosK on Friday August 12, 2016 @10:42AM (#12276056)
I don't know how valid that argument is, because the second time I set up a server was just tweaking two Ansible variable files and running the "provision" command.
Re:Ask HN: What is the future of back-end development? by aptwebapps on Friday August 12, 2016 @11:43AM (#12276544)
Sure, but what I was getting at was parent was just having learn how to use Heroku. And while it's true that automation is something you can do yourself, what about keeping the server up-to-date and patched and so forth? Also, repeating myself here, Lambda et. al. are a step further than Heroku.
Re:Ask HN: What is the future of back-end development? by StavrosK on Friday August 12, 2016 @04:00PM (#12278359)
There are tradeoffs. You don't have to keep Heroku patched, but you also can't tune it if you need something specific.
Re:Ask HN: What is the future of back-end development? by kossae on Friday August 12, 2016 @11:04AM (#12276265)
Sounds like you're looking for something closer to Otto (https://www.ottoproject.io/)
Re:Ask HN: What is the future of back-end development? by marktangotango on Friday August 12, 2016 @10:59AM (#12276227)
We're headed this direction with our service: https://www.lite-engine.com .
Re:Ask HN: What is the future of back-end development? by hedwall on Friday August 12, 2016 @09:24AM (#12275400)
So, like Elastic Beanstalk or Heroku ?
Re:Ask HN: What is the future of back-end development? by southpolesteve on Friday August 12, 2016 @09:30AM (#12275438)
I'm not sure why this myth persists. We've found Lambda + API Gateway to be an awesome solution for serving front end applications with server side rendering.
Re:Ask HN: What is the future of back-end development? by whack on Friday August 12, 2016 @10:30AM (#12275931)
"Heroku is useful for prototyping, not scale"

Can you clarify more on this.

Re:Ask HN: What is the future of back-end development? by MattRogish on Friday August 12, 2016 @10:42AM (#12276052)
My quote is "everyone leaves Heroku eventually". Either you hit something that Heroku won't let you do (because of their tightly bound model) or you are burning tens of thousands a month on what would cost 20% on AWS/GKE, and you do it for cost savings (people are nontrivially expensive, of course)/ownership.

Everyone leaves Heroku eventually. :D

Re:Ask HN: What is the future of back-end development? by elsurudo on Friday August 12, 2016 @12:39PM (#12276976)
Most sites never hit a scale big enough that they would need to leave
Re:Ask HN: What is the future of back-end development? by scrollaway on Friday August 12, 2016 @10:36AM (#12275998)
You can't easily scale with Heroku. Scaling, almost by its very nature, requires tight control over your infrastructure.

When you scale, you need to make your infrastructure fit your app. Not the other way around.

Re:Ask HN: What is the future of back-end development? by tachion on Friday August 12, 2016 @08:46AM (#12275125)
What does the fact that developers are expensive has in common with infrastructure/ops? You mean that developers shouldn't be working on it? I couldn't agree more, just like I wouldn't like my dentist being my heart surgeon! Developers should write the code, but they should not be doing infrastructure nor operations, and they should not enforce some 'serverless' utopia on projects/situations where pure infrastructure competence would do its job.
Re:Ask HN: What is the future of back-end development? by collyw on Friday August 12, 2016 @09:25AM (#12275405)
Why shouldn't we? I can do all of that. I can write better code than the the writers of the last two applications I have inherited (admittedly my sysdamin skills are probably less than a full time sysadmin, but good enough).

I guess following your analogy. If you only had a dentist and a salesperson available to do your heart surgery, who would you choose?

Re:Ask HN: What is the future of back-end development? by tachion on Friday August 12, 2016 @09:32AM (#12275452)
Well, mostly because you don't have the years of experience in doing it, pretty much that. Because most of devs live only on their laptops ('works for me' syndrome), without thinking about networking, hardware underlying, OS tuning, security and other things. That's generalization of course, and I am glad you can do it all, I'd wish to have chance working with people like you more, but the reality is that you're an unicorn. Reversing your argument, why can't I do your job? I mean, I've programming skills probably worse than full time developer, but I've did my share or development and I think they're good enough ;) Why 'good enough' should be acceptable when its infrastructure and operations, but not acceptable when its development?

I'd go and look for actual surgeon. Or bite the bullet and try to live my life as it goes, without risking complete failure of both these guys messing with my heart. ;)

Re:Ask HN: What is the future of back-end development? by 1138 on Friday August 12, 2016 @10:19AM (#12275824)
Devs that don't think about the environment their code runs in are bad devs. Sadly, this group seems to be large.
Re:Ask HN: What is the future of back-end development? by mabbo on Friday August 12, 2016 @09:16AM (#12275328)
Depends on where you work. If you're a three-nan start up, you don't have an infrastructure or ops team. You do everything.

As well, companies who have dedicated infrastructure teams are wasting money when we reach a world where that problem is purely automated. And that's where I think we're going.

Re:Ask HN: What is the future of back-end development? by tachion on Friday August 12, 2016 @09:24AM (#12275401)
Sure, sometimes you cant have it all, but in my experience (and hey, I am aware that I'm biased here!) I've seen ops engineers being better at programming than developers at doing ops. Another reason why I'd prefer to have 2 devels and 1 ops person is that that single ops person can bring to the table entirely different experience and point of view and that's a pure added value here.

If you think that infra teams is wasting money, then I'd say its the same case of 'serverless utopia' - when you're using 'purely automated serverless' platform you're paying way more money, because, hey, someone has to build that infrastructure and it isnt magic, its people, ops people. So what you're doing here is simply changing money buckets labels in your head and you have to now deal with a product that's tailored for everyone, instead of you specifically.

Re:Ask HN: What is the future of back-end development? by brianwawok on Friday August 12, 2016 @11:27AM (#12276431)
If you make a few competing 3-man startups.

One team has 2 devs and an op guy

One team has 3 devs, one of which knows enough ops to ship code

One team has 1 dev, 1 MBA, and 1 QA

One team has 1 MBA, 1 QA, 1 Marketing guy

I pick the 3 dev team, and hope each of them can fill in some of the other roles on the side (ops, marketing, qa).

Not everyone would pick the dev team, but I would.

Re:Ask HN: What is the future of back-end development? by tachion on Friday August 12, 2016 @12:09PM (#12276735)
How about I pick team with 3 ops persons I know, and all of them are better programmers than some of the professional developers I had to work with? And they also can do marketing and sales! ;) How come this approach can sound insane, but the 'full devs on' can't? I pick 2 devs 1 ops every single time, because, you know, OPS PEOPLE CAN CODE TOO as well 'good enough' as devs can do ops good enough and with 2 devs in team we've already developer skills covered. All I'm asking for is some sane approach instead of 'devs can do everything well enough'.
Re:Ask HN: What is the future of back-end development? by brianwawok on Friday August 12, 2016 @12:44PM (#12277002)
Not really sure I understand what you are saying.

Ops is not hard. A good dev can do it. I am a developer, not an ops person. I have written 100s of ansible scripts. I have dealt with deployments of single servers up to 100 servers across all kinds of hosts.

Your argument is "OPS PERSON CAN CODE TOO"

My argument is "DEV PERSON CAN OPS TOO"

Really labels are stupid.

Re:Ask HN: What is the future of back-end development? by sten on Friday August 12, 2016 @03:45PM (#12278255)
I took it as a lampoon on the "Full stack dev in x" bullshit that gets tossed around. It does sound insane to expect the devs to also be marketing gurus and finance experts and legal wizards... but no one bats a eye at the idea of "PhD. ML who also knows front end JS".
Re:Ask HN: What is the future of back-end development? by blowski on Friday August 12, 2016 @08:09AM (#12274920)
I agree in part. However, it reminds me of the prediction that front end development would be replaced by point and click build environments. While that suffices for a section of the market, it has very far from killed it off.
Re:Ask HN: What is the future of back-end development? by caleblloyd on Friday August 12, 2016 @08:27AM (#12275034)
"Serverless" such as AWS lambda removes the ability to take advantage of so many Computer Science principles that are integral to writing a fast backend. From one request to the next there is no CPU cache optimization, in-memory caching, and no IPC to other useful programs.

Serverless has it's niche for some tasks such as responding to events, but to do any heavy lifting I'd take a handful of beefy VMs over unlimited lamda functions any day.

Re:Ask HN: What is the future of back-end development? by paulftw on Friday August 12, 2016 @09:02AM (#12275231)
This is based on the assumption that server without those optimizations is not fast enough. That used to be definitely true in the nineties, but hardware is getting faster while human reaction time stays relatively flat. Hardware is also getting cheaper, so throwing a beefier server is a much easier and better solution than investing months of error prone and non-scalable human labor.

Everyone is ditching those beautiful and smart CS principles on FE by switching to hybrid apps, walking entire DOM on every update, etc.

There's no reason same wouldn't happen on backend. In fact it already has - interpreted languages, GC, micro services.

For better or worse progress in software always meant worse efficiency, because hardware was always forgiving that.

Re:Ask HN: What is the future of back-end development? by caleblloyd on Friday August 12, 2016 @11:47AM (#12276575)
It matters a lot!

1. Response time. A dedicated machine that stores state in-memory from request to request can respond orders of magnitude quicker than one that does not.

2. Resource Efficiency. 1-2 machines running optimized code will cost less than the 10-20 machines (or 100-200 machines) the cloud provider will have to allocate behind the scenes to run less efficient code.

Re:Ask HN: What is the future of back-end development? by GrumpyYoungMan on Friday August 12, 2016 @10:07AM (#12275720)
>hardware is getting faster

Considering that the end of Moore's Law is more or less here already, as pointed out in many HN articles, that's really no longer something we can take for granted.

Re:Ask HN: What is the future of back-end development? by paulftw on Saturday August 13, 2016 @12:15PM (#12281974)
Moore law != progress
Re:Ask HN: What is the future of back-end development? by Jtsummers on Friday August 12, 2016 @09:27AM (#12275418)
I only dabble in server stuffs, but I have to ask:

Why is that a problem? You can design a system and implement it with AWS Lambda (or similar) and a few other things like their (or another) database, message queue, and data storage. Then, when you find that you've got processes that are bottlenecked by this, move them into dedicated servers or containers with faster routines. Just like we already do when pairing (possibly) slower but higher-level languages with C libraries.

Re:Ask HN: What is the future of back-end development? by karma_vaccum123 on Friday August 12, 2016 @10:28AM (#12275917)
PaaS vendors will optimize the hell out of their higher-value services, with dedicated and possibly customized hardware and networking.
Re:Ask HN: What is the future of back-end development? by obihill on Friday August 12, 2016 @08:17AM (#12274976)
I agree in principle with most of what you've said here. The server-side is going to be a lot more intelligent in the near future though. My prediction is that every cloud provider is going to have some sort of AWS Lambda service that will eventually become like a server-less toolkit in the cloud. And these platforms could eventually have some augmented intelligence built-in.

Essentially, we can't keep teaching each and every developer database connections, SQL, et al. The cognitive load associated with these sort of programs actually slows down advancement, and the quicker you can setup cloud-powered services that get the job done, the better it will be. Although, I can't say what that will do the livelihood of developers. We'll have to wait and see.

Re:Ask HN: What is the future of back-end development? by collyw on Friday August 12, 2016 @09:26AM (#12275416)
Come one, people still stick with PHP because anything else is too difficult to set up on a server. Its been like that for years already.
Re:Ask HN: What is the future of back-end development? by obihill on Friday August 12, 2016 @05:29PM (#12278935)
Not necessarily. Going forward, if we want to get more stuff done, these things have to be abstracted further. We can't continue with this constant learning mountain just to figure out how to do things that can be expressed with a few lines of well thought-out syntax.
Re:Ask HN: What is the future of back-end development? by mrweasel on Friday August 12, 2016 @09:37AM (#12275488)
Aren't you mixing infrastructure and backend-development?

Hardware scaling and load balancing is infrastructure. Abstracting the data for the client, that's backend development, that's where your business logic lives.

Re:Ask HN: What is the future of back-end development? by _RPM on Friday August 12, 2016 @10:35AM (#12275988)
Yes. You won't even have to know to code. You'll just press a button that generates the code for you. In the future, all programming jobs will turn into data entry jobs where the programmer will be entering commands into a GUI to generate a button here and there.
Re:Ask HN: What is the future of back-end development? by mabbo on Friday August 12, 2016 @03:48PM (#12278269)
I sense sarcasm.