Another example:
Redundancy. We have two lungs, two nostrils, etc.
Anything that I'm stressed about breaking or not having enough of, if it's practical to get a second one, I do, that way the stress is gone. Not always practical, but great when it is.
A helpful way to remember it: 3 is 2, 2 is 1, and 1 is none.
Seems to me that the real trick is knowing when there actually is safety in failure. Quit your steady job, strike out on your own, oops the economy popped and every steady job is now on a hiring freeze. Good luck!
The US and Indian governments have had bad relations for a long time. The US has the habit of weaponizing anything and everything. While not exactly sanctions, people don't forget things like PL480[1] that easily:
> Many of us still have hurtful memories of the mid-'60s when, after two successive years of savage drought, India desperately needed American wheat under the US Public Law 480 on rupee payment — and at relatively low prices because the country had no foreign exchange to buy food in the world market. Indira Gandhi had just become prime minister and chose to go to Washington on an official visit. Lyndon Johnson gave her a gushing welcome and responded to the food problem confronting her effusively, promising as many as 10 million tons of PL480 wheat. However, at an early stage the transaction turned sour.
> Infuriated by India's criticism of American bombings of Hanoi and Haiphong in the course of the Vietnam War, the irascible Texan put food shipments on such a tight leash that India literally lived from ship to mouth. With every morsel we swallowed a little humiliation. When told that the Indians were saying exactly the same thing as the UN Secretary-General and the Pope were, Johnson had retorted: "The Pope and the Secretary-General do not need our wheat."
[1] Swallowing the humiliation (http://archive.indianexpress.com/news/swallowing-the-humilia...)
In other words, how would an independent financial system have helped India to put food on the table?
Dead Comment
As for the ecosystem, most of what I've seen is a language that seems built for supply chain accidents (random github.com main branches as far as the eye can see) built by a company with a track record of developer tools that provide terrible developer experience that live in their own little bubble divorced from most of the rest of computing. (These are also things that seem very familiar to me from my brief horrifying time with ColdFusion.)
If golang works for you then that is great, but it upsets me to look at and right now you'd need to pay me a lot to have any interest of maintaining code written in it. I have enough scars from terrible things like ColdFusion on my resume.
I think you missed my point. This is not about whether I personally like go (I don't) or its error handling (I don't). It's about which aspects, historically, tend to lead to a language's demise over a few years. The claim is that error handling is not one of them.
C isn't great with that either. It's still heavily used.
The supply chain issues are more relevant, but the key question then is whether the language and ecosystem evolve to avoid this. Golang has shown to be flexible and generics were unthinkable not too long ago. Now they are there.
Neither golang nor C are my favorites, and you can argue all you want why golang is not for you, but that misses the point entirely.
I agree that Go is special in this list. If Google pulls the plug someday, then it would all depend on whether a strong community takes over the compiler and language maintenance itself.
My fellow dev often laugh when I tell them that instead of looking at all the long dead techs that are not useful to me anymore, my way to feel good is to look back at all the long dead techs that I didn't bother to learn.
And, geez, is the graveyard huge.
> Java Applets were also a big thing once upon a time. They were slow, and having the correct version of Java installed on your computer was always a mess.
Java applets were never that big. They didn't work very well (for the reason you mention) and weren't ubiquitous. They also nearly all looked like shit.
But Java isn't disappearing anytime soon. Java is huge and it'll have a legacy dwarfing COBOL big big times. Many may not find Java sexy but the JVM is one heck of a serious piece of tech, with amazing tooling available.
And most devs hating on Java are using an IDE written mainly in Java (all the JetBrains ones): the irony of that one gives me the giggles.
Did anyone in the mid to late nineties / early 2000s really discover Java and Java applets and thought: "Java applets is the tech that'll catch on, I'll invest in that" and not invest in Java itself? To me Java was the obvious winner (not that it was that great but it was clear to me Sun was on to something). And, well, compared to the other dead tech, at least if you learned Java applets you got to learn Java too so it's not all lost.
I feel that's substantially different with Python, Go, JS and ... C/C++.
For example, if I'm scheduled to write for 3 hours and I feel too much resistance, I write for less time. Maybe 2 hours. If I'm super resistant, I invoke the 'nuclear option' and write for no more than 30 mins, or even less.
Much more important than hitting some predetermined target is writing everyday no matter what. To be forthright, it's not particularly difficult once I get going. The writer in me wants to write; that guy just needs a little coaxing sometimes.
I learned of the 'nuclear option' from an unfortunately titled book by Jerrold Mundis called 'Break Writer's Block Now'. The title is pretty cheesy but the book is gold. It's designed to be read (and applied) over an afternoon, perhaps 3-4 hours. It works. The proof is me. I've been a professional screenwriter for several years now as a result of daily effort.
I guess the most important thing I've learned is that punishment doesn't work (at least for me). But gentle, consistent practice does.
Time aggregate is a huge leverage and immensely undervalued.