7 ms·
I really don’t get articles like this. You can rent a fleet of computers for an hour for a few dollars. Your cellular phone is more powerful than the time-shari
by pbourke 7y ago
I really don’t get articles like this. You can rent a fleet of computers for an hour for a few dollars. Your cellular phone is more powerful than the time-sharing systems of 25 years ago. There is pervasive wireless broadband internet available in much of the world. Single computers can be bought with dozens of cores and a lake of RAM. You can look up nearly any piece of human knowledge in a few seconds. The labor of millions of engineers can be accessed via APIs which you can use to assemble a stunningly capable application with a minimal team.
- ekianjo 7y agoThis article is actually a perfect example of confirmation bias. Very useful in a way to see how some people think.
- fitnesshealth 7y agoRight agree with you..
- trabant00 7y ago> You can rent a fleet of computers for an hour for a few dollars. On which you deploy an web app that has 30 working components written in 10 different languages that is able to do a fraction of the work a single vertically scaled server that runs 3 C written components. And has less than two 9 uptime. No one person can grasp it mentally. Is statically linked and must be updated piece by piece, unable to use the distribution repos and upstream work. Oh, and man, what man? Every one of the 30 components is "open core" with cool new invented terminology that pushes you into paying for consulting or reading spaghetti "object oriented" code. It also has stack trace for logging. How ungrateful of little sysadmin old me not to appreciate progress.
- sascha_sl 7y agoYour comment mirrors the article. A bunch of projection, written out. Lots of people do microservices for the wrong reason, with the wrong model. They don't realize this model asks for a lot of initial overhead per process for visibility and early investment into figuring out how these services communicate. For instance, a service that sets off 3-4 layers of HTTP requests is an indicator of a bad microservice architecture. A service that uses a shared data bus (e.g. Kafka) but can survive without it however... That doesn't mean things are regressing. People have always done the wrong things for the wrong reasons.
- trabant00 7y agoIt is a distinct possibility that I am unable to find work for the x% for organizations that use the microservice model correctly.
- marcosdumay 7y agoIt's very likely that anybody that you know that uses microservices even before working there is using them wrongly.
- foobarqwertz 7y agoCan you give some directions(links) on good microservice architectures and the right reasons to deploy those?
- sgt101 7y agoSo, why are we doing this? In truth because the world of C (I was a C and then C++ programmer 30 years ago) did not enable the production of effective applications cheaply and quickly. Yes - you can write anything, but it took months and months and months. We've traded efficiency for productivity. We have been able to do this because of Moore's law and all its friends. Also, C code is hellish to read and understand (#define anyone?), and logging almost never happened. As a sysadmin you will be able to look at the organisation you work in and count up the number of sysadmins, my guess is that there are less than 50% of the number 10 years ago, maybe that's the problem?
- jcelerier 7y ago> Yes - you can write anything, but it took months and months and months. The C & C++ of 30 years ago, where compile times took days - sure. Nowadays building a whole yocto software stack, basically a full linux distro - from GCC, to the kernel, to glibc, to X11, to Qt takes 6 to 8 hours in a good laptop. In addition, modern language features & the general shift from runtime to compile-time polymorphism, especially in C++, make the potential for errors decrease sharply, and language simplifications - standard library improvements, terser syntax, also make time to release go down. Finally, tooling has greatly improved : I barely ever need to run a build with my IDE to check for errors, because IDEs now embed clang, clang-tidy, clazy... which checks your code as soon as you type and highlight it in the editor. And asan, ubsan, handle the remaining cases which cannot be caught at compile time, leaving only logic errors to handle.
- AstralStorm 7y agoThis. The one problem is a lack of a solid networking library. Unix sockets/winsock is ancient and terrible with tons of corner cases, Boost ASIO is creaky and "boosted", other useful things like 0mq are good for IPC but not Internet. Qt eats the world and is a pain to integrate. Libevent, libev etc. are not C++ and still pain to integrate. Maybe there is some library that is lesser known but good. As for time to develop, besides networking, C++ wins, even for hack projects, in comparison with Python even, JS/HTML/CSS w/ framework stack being far slower and making for terrible UX. (I'm not writing about languages I do not use.) Java and C# can be fast too, but it hits the limits when you actually have to calculate things which gets real awkward real fast. The main win is... Tooling. Java tooling is best now since maven and ant are mostly gone legacy, then C++ (I'm counting Qt Creator and Glade, cmake is eh, cmake+something is ok), then finally JS tied with Python. JS fails terribly on debugging and the creaky rarely adaptable UX libs, while Python after all these years still has tooling issues. (Plus performance where it matters.) Rust is not there yet, maybe soon. Scala is nice though fewer people can use it than new C++. Honorable mention to specialized tools like R, Faust, Lua, Matlab and Fortran. Note they integrate well with C and C++... Try anything else and you're in for a ride. Even second most supported, C# and Java, go through a C FFI layer.
- taneq 7y agoThat's because as a sysadmin you can now do work in a week of plugging components together that would have taken three months for a team of five to pull off with C.
- trabant00 7y agoProblem is no amount of plugging and configuration on my part can fix problems that come from the complexity of the software architecture. I can imagine it's a lot cheaper. But what is the compared value/quality? I reckon it's below the slow and steady approach. You are free to argument against.
- theamk 7y agoDon't work in such place then? Seriously, there are always good and bad places. In fact, when you said "two nines" -- this is like 15 minutes of downtime per day -- I immediately thought about one of my jobs (long time ago) which involved website running on Windows Server, using a mix of ASP and DLL files. It would routinely go down for tens of minutes each deployment because someone would update the DLLs in the wrong order. There was also using PHP with Apache. As a sysadmin, remember all those times when you had to hunt all the Apache-spawned processes and kill them by hand, so you can finally apply new configuration? Or when an .so file update made an app server not start, but that darned start-stop-daemon was silently eating both exit code and error message? It got much better in the sysadmin world -- it is now easy to do the sane things, and all that containerization means that if programmers do provide something insane, it is trivial to clean up the mess.
- khawkins 7y agoThe point of the article is that hype of most of these technologies doesn't nearly compare to the hype of 7 years ago. We've had smart phones, AWS, deep learning, promises of AR, crypto, etc. for at least that long, and nearly all of those feel like they're in stagnation compared to how exciting they were then. It's not that they're not getting better, but they're in the transition period where they move from new frontier to commonplace technology taken for granted. For example, it seems crypto might never be successful as a replacement for consumer direct spending due to bandwidth issues. However, as a backend currency for a front-facing financial institution it has untapped potential. The growth in interest from here will be gradual, but will probably elevate.
- murftown 7y agoOff-topic, but I came here to say that my long-standing fear just came true about the word "crypto"; namely, that I totally misread it in TFA as meaning "cryptography" - which is of course what the term always used to refer to - and honestly forgot that it might refer to "crypto-currency" until reading your comment. I knew someday that would happen! I made up some story to myself that comments in TFA about "#cryptowinter" and "FUD in the community" might refer to communities losing confidence in cryptography techniques after too many companies getting hacked. Out of touch, I know, to not be aware of that hash-tag. O_o I really hate that we have another meaning of "crypto" now so that misunderstandings like this can happen often. As programmers, we know how important naming is and how costly it is to create confusing collisions. Cryptography is too important of a concept in tech for us to not have a clean word for it. smh
- deleted 7y ago[deleted]
- apatters 7y agoNone of that directly describes business (or consumer) value. It is mostly a recitation of information technology statistics. If you look at the period of say 1990-2010 there was an absolutely insane ROI on human capital invested into IT. Arguably this level of ROI only happens once or twice in a century. You had young guys in their basements, garages etc. inventing life-changing technology with no investment other than a PC, an Internet connection, and time. It basically all revolved around getting people a PC, a 'net connection, and a phone, and then delivering services over those things. Everyone saw what was going on and there was an unprecedented global migration of labor into the IT industry. There was a perception that anyone could be a millionaire, and anyone could change the world, etc. and some degree of truth to it. There's no denying that much of the low hanging fruit is now gone, and there are more people in the industry than ever before (many of whom had huge expectations based on what they had witnessed transpiring a decade or two prior). So of course you are going to have a changing industry and an expectations mismatch. The old days are over and they're not coming back. Any new wave of innovation and disruption is at least as likely to come from a non-IT industry as it is from IT. There are still trillions of dollars to be made in IT. Since the future is never evenly distributed, a lot of these dollars are in emerging markets, and/or in industries which are being transformed by the IT revolution's latest waves a bit late in the game. But it is a different industry now, there are fewer opportunities for disruption and there are many many more fingers in the pie. In general the way this money is made will look a little bit more like how money's made in mature industries every year. There's no fighting history and you're not going to be the next Steve Jobs. But the pie is so big that you can carve out whatever kind of little niche you would like, as long as you understand the rules of the game.
- baybal2 7y agoThe biggest question for me is what we are gonna do as professionals in the coming "long winter." We have not a single project for a "tech" brand in the pipeline, we are only now learning how do tech projects for complete industry outsiders. Not so few have some tech expertise, but they are all strangers to ways of the industry. They all have own ideas where tech goes in their business model, and I can't say that all of them are "amateurish" or not thought through, I'd say some outsiders were better at running tech projects than some de-jure "insiders" I bet that it will be all about ability to get more tech business outside of tech industry for us.
- xxxpupugo 7y agoAnd that is the problem. It has hit the plateau. Ideas with value have already been invented. You have hammers powerful than ever, but what are problems you can hit with it? That is the hard part. Before we are finding more meaningful problems to tackle, keep inventing hammers doesn't make too much of sense, it is just waste of money. Maybe the future of IT will be to proven its usefulness solving problems that are hard before the revolution of IT, and are still hard after that. Like cheaper/greener energy, reliable/faster transportation, more accessible healthcare and etc.