< Back to the archive

Like what you see? Subscribe here and get it every week in your inbox!

Issue #52 - March 1, 2020

Here are the top threads of the week, happy reading!

Top comment by Tade0

My father had the misfortune of being a civilian in Kuwait during the first gulf war. What I learned from his stories is that the line between normalcy and utter chaos is thinner than one would think.

The war itself from the perspective of someone not actively participating is mostly boring (his words) - you can't really go outside, cable is down(no internet back then), not much is happening.

But the brief transition period between peace and war is the worst. People desperately trying to stock up in the last minutes, quickly realizing that it's pointless to stand in line and pay when there are so many more of them than the supermarket's staff.

I, for one, "prepared" by weighing 10kg more than a few years ago. I have body fat to spare. My only worry is a good source of water-soluble vitamins.

Top comment by mixedCase

Probably the most surprising thing for you: Go is getting generics. No exact timeline, but it's happening for Go 2.0.

Rust is seeing production use in many places and its being accepted more as the sane alternative to C for modern development of high performance software. Ecosystem still not big or mature enough to make big waves, however, but that depends on how you interpret "big waves".

SPAs are used and abused, the tooling to make a performant progressive website with them has gotten better but the know-how is not widespread enough.

React has essentially won the mindshare battle and they are focusing more on functional components. But there are other things with their own healthy niche like Svelte compiling components that manage their own DOM, Elm is still around (and still not 1.0) and it has inspired other "Elmish" frameworks.

Desktop software quality has gone downhill and seemingly everyone is using Electron.

For many companies, Kubernetes is the new normal mode of operation. You should know it, but it's still far from "the way to do things" for industry in general, mostly due to its complexity and learning curve.

Top comment by jsdevtom

Homeless shelters often offer the homeless an address. Use this address to get a bank account (you may have to go in to a few branches to find one who accepts the homeless shelter address). Now walk around town and ask for a job in every restaurant/ Cafe/ whatever and give them your CV and ask if they have any jobs. As long as you are smartly dressed and smell fine, you should be able to find a job. Try not to do illegal work - it's often a scam. Shave in the local library with disposable razors when there are hardly any people there. Use this time to wash as well. Now, the bank may need an employers wage slip. Explain to the employer that you need a letter from them for the bank in order to open a bank account stating that you will be working for them soon. Give this letter to the bank. This often works. Try to tell as few people as possible that you are homeless. You will probably have to improvise on these steps. Most importantly and the hardest: remove the victim's mentallity. You are breathing, appreciate everything that you can, even adversity. Nothing is wrong with you. You will look back on this time in the future and be grateful for this. Without it you would not be as strong as you are going to be.

Top comment by WheelsAtLarge

Given what I've read here, it seems that most people here forget or don't know that most apps need a strong marketing plan from the start to give it a decent chance to succeed. Writing an app that sells itself is very rare and even if it takes off it needs constant marketing.

If you read the financials from most software companies that are public you'll see that marketing costs are way higher than development and maintenance costs. It's the primary way to get customers to buy or use your app.

Top comment by vsskanth

Since you mentioned he is on a visa, there might be a few cases here:

a. He is on an L1 visa, which is highly restrictive (cant change employer). Here, there isn't much you can do to help until the company converts him to H1B (after L1 runs out).

b. He is on an H1B visa. If this is the case, ask him if his I-140 is approved. If it was approved for more than 6 months, he can safely change jobs without visa running out (new employer needs to sponsor for an H1B, but you can get indefinite 3 yr extensions). See if you can refer him to your friends working in other companies, or encourage him to apply for other jobs (since you think he is good at his job). Once he gets a competing offer, he will have the leverage to negotiate a raise or move to a new position.

c. He is on an H1B, without an approved I-140. If the company isn't filing one for him yet or delaying it, he needs to leave ASAP, or he will have to leave the US after 6 years on his H1B runs out. This is a very stressful situation to be in. The best you can do for him here is to refer him to another job where visa workers aren't being exploited.

As another Indian on H1B, I really thank you for your concern for your colleague. There are so many Indians out there stuck in bad work situations due to their perma-temp work visa status.

Top comment by troysk

I started by using a NVR off AliExpress. It worked well until I added a camera from a different vendor, same brand though and it refused to be reliable and had frequent disconnections.

Moved onto ZoneMinder and after hours of setup I felt the UI wasn't good enough for a non-tech person. I want others in my family access the feeds with ease, ZoneMinder does not cut it.

While I was experimenting with cameras, I was also getting into HomeAssistant which had motionEye as a supported service. It was easy to add cameras and almost any camera could be hacked to have RTSP support and motionEye.

Motion-detection could be enabled on the Raspberry Pi's motionEye, offloading compute off the cameras. This was important for me as many of my cheap Chinese cameras lag/hang/shutdown on load.

The Raspberry Pi also has Pi-Hole installed which I configured to block all IPs and domains being used by the IP cameras thereby limiting its access to local network only.

As I kept adding cameras (10+), performance on Raspberry Pi started getting affected, so I added another Raspberry Pi and installed motionEye on it. Setup MQTT on motionEye to send notifications to HomeAssistant on motion/human detection. Added multiple HDDs (4) so cameras can write with less conflicts.

I still haven't got some cameras (Xiaomi) into this setup as I don't want to hack them yet. (The open firmware(s) lack features). But they do backup recordings to the same Raspberry Pi NFS and I plan to find something which can show motionEye and Xiaomi videos in one interface.

Top comment by jaredtn

I'm currently enrolled in Georgia Tech's OMSCS program - http://www.omscs.gatech.edu/. 2-3 years of part-time work for $7000, and it's a fully accredited degree with no distinction from the on-campus degree. It's no pushover, a lot of work is required. But the opportunity to get a top-10 CS degree for under ten grand total is unparalleled.

Top comment by michaelmcmillan

That sucks! But the real lesson should be that you do not expose your database on the internet (0.0.0.0 vs 127.0.0.1). That way it doesn’t matter if you leak your .env via your webserver. Never expose sensitive services.

Top comment by sgentle

The feeling you're describing is called anxiety. Some anxiety is normal, but constant anxiety that interferes with your life is a problem. I think it'd be worth trying that label on: call it anxiety, and ask "how do I reduce my anxiety?". About 1 in 4 people experience an anxiety disorder at some point in their lives, so there's a lot of research and good approaches out there.

One thing that stands out to me is that you've made some pretty big and scary claims without a lot of evidence to back them up. Are you actually not a good developer? Are smart people really "capturing" the opportunity (ie there is less opportunity over time)? Do people who aren't working all the time fall behind and never make anything of significance?

If so, prove it! Figure out what evidence you would need to definitively answer these questions, and research or experiment until you have that evidence. Anxious thoughts are like dreams: they seem perfectly reasonable in your head, but when you try to bring them into the real world they fall apart.

As far as evidence goes, I'd point you in the direction of two of my favourite Richards. The one who did Clojure: https://www.youtube.com/watch?v=f84n5oFoZBc and the one who got a Nobel for Quantum Electrodynamics: https://www.asc.ohio-state.edu/kilcup.1/262/feynman.html

Top comment by theculliganman

If you change your address to California to stay in compliance with state law, it should present an option to cancel online. Unfortunately a lot of print journalism websites are like this.