6 ms·
Agree! One can still Keep It Simple and Stupid (KISS). Our latest MVP - https://www.code-scope.com https://www.code-scope.com lets one interactively analyze a
by tkinom 6y ago
Agree! One can still Keep It Simple and Stupid (KISS).
Our latest MVP - https://www.code-scope.com https://www.code-scope.com lets one interactively analyze and document GBs of source such as linux kernel.
It runs on Digital Ocean's $5 instance, build just with Jquery - bootstrap4.
The app binary that runs code-scope.com website is < 10MB including all the frontend and backend code.
Good old tech such as jquery works very well for us.
Complex js front-end tooling is a choice, not a requirement for develop web app.
- mumblemumble 6y agoKISS remains one of the most under-appreciated principles out there. I still annoy people by talking about my time at the high frequency trading firm, because working there was a revelatory experience. They were operating at a scale and velocity far beyond any place I've worked at, with lower tolerance for downtime, and very little hardware, relatively speaking. The traders had fun, of course, but it was frankly kind of boring to work there as a techie, what with everything ticking along so smoothly all the time. And the way they got there was through an absolutely fanatical devotion to the KISS principle.
- nefitty 6y agoDo you happen to know of any best practices guides that might help others achieve similar results? I’m working on an app that might have to scale very quickly at launch, and I want to do my best to help our team do it right.
- devlopr 6y agoSimple advise. Start with a 5 dollar droplet and increase ram / disk speed when required. If you reach 64 gigs consider spliting. What I do is put my database on a droplet and my files on another and it can handles millions of requests. Put them on the same machine and I need to increase ram higher than the cost of multiple small droplets. If you ever reach those limits consider setting up a load balancer.
- tkinom 6y agoIn https://www.code-scope.com https://www.code-scope.com, the source code search engine database is in the same $5 droplet that run webserver - We are cheap. It is part of <10MB app which hopefully anyone can download soon. We figured the SSD can do 1-3GBs/second transfer, no point to slow it down with separate process or worst, separate network node. All the web queries are responded in <<< 1 second - so far....
- mumblemumble 6y agoNo, I don't. And the specific practices at this company would be unpalatable to almost anyone. Package managers for dependency management, for example, were banned, because they made it too easy for the dependency list to grow in an uncontrolled manner. There was a lot of homegrown software where others would use a library. That was deliberate. If you need five features, but choose an off-the-shelf package with 5,000 features, pretty soon you'll find that the list of features you're using has grown to 50, then 500, and so on, even if you don't actually need any of it. If a toy's in the box, the kids will play with it. Maybe one thing to try is to focus on imposing constraints, and making people live within them. RAM, # of CPU cores, whatever. Software is like a gas. It will naturally expand to fill all available space.
- MikeDelta 6y agoToo often I see developers not thinking about KISS, produce very complex and slow systems. And as a solution to improve the performance, they decide to throw 10x more cloud infra against it instead of thinking a bit harder.
- mumblemumble 6y agoEspecially with the current popularity of scale out as a golden hammer. I've come to think that scale out is a self-fulfilling prophecy. If you choose a solution that's designed to support scale out, then all the mechanisms and limitations (yes, limitations) it needs to adopt in order to make distributed processing work will impose a burden of overhead that you will need to offset by scaling out.
- why_Mr_Anderson 6y agoIt's actually sad to see that scale-up almost disappeared, especially considering the insanelly powerful HW we have now, just NVMe SSDs are game changer for anything I/O bound. I remember how few years back there were some people in our company completely floored when they learned that StackOverflow ran on 1 SQL server (quite beefy though, 1TB RAM IIRC). Similar 'cloud' (aka 'someone else's datacenter') setup would cost significantly more, but that seems to be forgotten/forbidden knowledge these days. I guess people need to justify those cloud technologies certificates.
- deleted 6y ago[deleted]
- MikeDelta 6y agoYes, exactly. I don't want to call it the 'new' generation but many have seem to forgotten how efficient systems can be if you build them properly. I haven't seen any certificates that replace sweat and hard work yet, except in organizations where they cannot keep track of individual developer performance and simply count certificates.
- r45tio2 6y agoThis is good, and it works well. The issue (as others may have pointed out) is not that simple apps _can't_ be produced, it's that they _won't be accepted_ when they are. The same thing happened to TCL/Tk ... it "doesn't look right" so is dismissed. By and large, the driving force seems to be those who want to pay for "sexy dashboards", usually but not limited to those whose primary motivation is initial impact. Aesthetics are everything - functionality is secondary. Snake oil sells. Things that "look old" are laughed out of the room. It's unhealthy.