Hacker Newsnew | past | comments | ask | show | jobs | submit | more okaleniuk's commentslogin

Most of the startups actually plan to survive for more than 2 months. And it makes total sense to think about scalability, reliability, and performance while it's still possible to change your whole stack every other week. Not forgetting about other things such as securing your cash flow, growing your talent pool, protecting your IP, etc. Finding a good balance between multiple focii is exactly the job for a founder. Of course, it's a hard job, that's why we don't see many successful startups to begin with.


Yes, reliability comes from the same ground the scalability does, and yes people are mostly chasing the latest trend. One does not contradict the other.


>yes people are mostly chasing the latest trend

https://www.youtube.com/watch?v=b2F-DItXtZs

15 years ago people were making the same "chasing trends" complaints. In that case there absolutely were people cargo culting, but to still be whining about this a decade and a half later, when it's quite literally just absolutely basic best practices.


It's definitely a step in the right direction. But wouldn't the next step be vanilla JS and any-script-managed HTML?


Thanks, what do you mean with "any-script-managed HTML"? If you mean that you can use any script, like e.g. a bash script, to generate static HTML files, then yes, in a way Mastro is basically that script. Except that it comes with a server as well – both for local development and production, should a static site no longer suffice.


Some safety critical real time systems have strict time predictability requirements. This means that the whole loop should pass in exactly X microsecond, not more not less. For this, all the programming should be pretty much branchless.

For instance, all the sorting algorithm turn to, effectively, bubble sort since without branches, you always go with the worst case - and the sorting complexity is always the O(n^2). But it's okay, since the algorithm becomes predictable. You just swap a conditional swap:

    if a < b then swap(a, b)
with arithmetic swap:

    c = (a+b)/2
    d = |a-b|/2
    a = c + d 
    b = c - d
and that's it.


O(n^2) isn't required. One could do an in-place merge-sort, which is also always worst case, but with O(n*log(n)).

I suspect everyone turns to Bubblesort since the inputs are small enough that it doesn't matter (evident by the fact that it should fit within microseconds).


It's sad that we demoted the field from engineering to philosophy. But it is what it is.

Next step - fashion and belief.


philosophy is the basis of reason, math, and science. it's sad that "engineers" don’t understand it or it's import.


Engineers believe in definitions. By definition, philosophy is not a scientific discipline, because as soon as a discipline becomes scientific it... stops being philosophy.

As Alexander Pyatigorsky famously wrote, "the value of philosophy is in that nobody needs it".


what i meant was- it is a poor engineer indeed who doesn't understand the concepts of philosophy such as ethics, logic, and how that led to the scientific method.

science without philosophy is just scientism. it leads to engineers creating previously unimaginable horrors!


It's an improvement over demagoguery and blind rule-following.

Moreover, the book argues for engineering principles (in pretty much all possible senses of that phrase).


Sure!

I'm not saying that philosophy is bad. Maybe making software just never meant to become an engineering discipline. I mean making clothes, laws, and music isn't. And it's fine.

But engineering does imply some rule-following.


Our infrastructural team keeps about 2 MSLOC building on several compilers and running on several architectures. They report a new compiler bug every 2-3 years.


It's not about accounts, it's more about engagement. I still have my Facebook account, and I actually used it two years ago to fund my gym trainer and tell him I couldn't come.

Social media is a reality one can't simply ignore completely. One can complicatedly ignore it though to some level of success. For me, the minimal rules are: don't write on reddit, don't read on linkedin. Don't touch anything else. The orange site is ok-ish.


I use IDE at work but rarely at home.

My design is usually very simple, I don't have to keep a lot of things in mind to begin with. For instance, https://wordsandbuttons.online/ is about 100KSLOC now, but since it's inherently flat, no dependencies, no third parties, I can manage it with a Vim or a gedit with none of the IDE features. My implementation is always in the same file as the call.

I suppose, IDE makes writing harder code easier, which results in tons of saved time, but it also makes writing harder code easier, which results in tons of hard code.


I tried that in Geometry for Programmers https://www.manning.com/books/geometry-for-programmers

I needed a short chapter on calculus so I go on and explain Bezier curves and splines, but I couldn't afford a full introduction. So, I only explained how differentiation works and gave a few examples. The rest was delegated to SymPy.

Funny thing. There are errors in differentiation formulas in the final edition of the book. Some final edits went wrong or something. Anyway, so far, we had exactly 1 (one) complaint about that.

Apparently, programmers don't care about formulas if the code is already there.


I once wrote a game with no graphics or sound. It was a maze game: you were supposed to lead a mouse cursor through an invisible maze by touch. If you drive your cursor into a wall, it stops. You start at the bottom, and if you manage all the way to the top - you win.

Well, it's not completely useless. If you're extremely bored at work and don't want to draw attention, this could be your time waster of choice.


Explore this idea further, it would make a good tool for mental visualization and memorization as one would have to memorize and construct a mental image of the maze in order to speed up the solving, neat idea!


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: