gumballhead
In the beginning, we routinely worked 60+ hours a week and it didn't really bother me. But when it felt like no matter what I did my efforts wouldn't matter, I lost all my motivation and burned out. But I still couldn't bring myself to quit. I was emotionally invested in the company, our team, and our customers.
The second round of layoffs in a year (a 67% staff reduction) was the final nail for me. After I left I didn't work for at least six months. The first two months, I basically did nothing and got a lot of sleep. Then after that I decided to start doing all the things I never had time for. I cooked all my meals, I exercised, I traveled, I spent more time with family and friends, and I developed some hobbies outside of tech.
That was about five years ago. I've had 3 jobs since then, and I left each of them before a year was up. If the right amount of balance is just to have a job you punch in/out of that pays pretty well, I'm just not that interested. But I also know that there's no way I have another startup in me. For awhile now I've actually made more money with my "side hustle" than I can as an engineer, even though my cash flow is very uneven. So I think I'm basically done with software.
Apply generator expressions, format them with map, filter out weekends, anything in itertools (dropwhile, takewhile), etc.
I wrote a datepicker to demonstrate some concepts like lazy evaluation with JavaScript generators and it was fun coming up with the test cases.
https://github.com/gumballhead/datepicker/blob/master/src/it...
It's usually because the client / product owner has no idea what they're doing but still insists on making all of the decisions with no input from users / developers / designers. And it sure sounds ridiculous, but it is the norm. Developers are viewed as people who do not want to participate in meetings or planning, and who exist on streams of work to do. If the developers run out of work, they'll go crazy! As long as we "keep them unblocked" and have tasks ready for them, we're doing our jobs and they'll be happy!
The main ones that get me are the whitespace (4 characters) and restrictive line length (79 characters) rules. They don't work well together, and also don't work well with python's significant whitespace (can't easily break up a line), namespaces, generator expressions, and type hints. All for a subjective formatting decision.
I'll also often see people trying to cram as much as they can into 79 characters with one letter variable names and such while calling that elegant code because it's a "one-liner."
In my experience a sinking ship doesn't start floating, so don't stick around for that reason. It was also depressing to be there after all my friends had been laid off or quit. In reality I probably stayed there two years too long, and it was because of the people I worked with.
As you say, there's a tremendous advantage in using triggers to remove data invariants, but then there's also the issue of the schema's state, and it can be prone to error depending on the complexity of the trigger. It's definitely recommended to use SQL's schema inspection to verify and test it. Perhaps even based on schema definitions from protobufs or whatever.
I finished my degree with economics, went to work in finance, and worked my way to being a developer by first doing advanced Excel, then Access, then database servers, then web development, then native development, and now more math heavy research and development. As the need arises, I keep going further down the stack and gaining more understanding. It's much more natural (for me) to learn that way.
Second biggest annoyance is keyword matching me and hundreds of other people and spamming us all, because so many times there isn't even close to a good fit other than your client uses java and I have some Android experience. Most of these people then make me feel like I'm a high pressure sales target, and in many ways I know I am so it's more understandable. But I'm not likely to want to work with you.
The best recruiters I've ever worked with make me feel like I'm the customer and they're doing me a service. Finding good opportunities can be hard, and I probably don't know the market as well as you do. Those recruiters don't outwardly care if I'm not interested in a particular role they thought was a good fit. They say that's ok, what don't you like? What should I look for when I send you opportunities?
The d3 specific parts are the idea of mapping data to DOM elements (which is the part I think is beautiful), how it uses the data join to do so, and how you use the scale functions to map from data space to pixel space to set the element positions and other attributes.
Feel free to email me if you like -- it's on my profile.
If I ever have to make a chart with another language, I cry because I can't use d3. I have reimplemented portions of d3's api in other environments like native Android before. Digging through the docs to find whatever configuration variable I'm supposed to set reminds me of the days of jquery plugins.
Someone had built a utility to dump the memory for your character to a file, where if you knew or could figure out the addresses, you could edit it and load it back into the game. I spent a lot of time changing a value in game, dumping the memory, and running a little diff tool I built to figure out where everything was. Then I built a little editor that could edit your character and item stats with a ui that looked like the game.
Such huge nostalgia for that game. StarCraft Remastered really brought back memories too. Blizzard is so, so good at game design.
I personally hate working remotely. Most people don't though so it is viewed as a perk. I've interviewed people before who applied solely because we offered remote. Some of them even lived within a pretty easy commute to the office.
And along the same lines, it's not a great idea to respond to "why are you interested in working with us?" with "because it's remote" even if you really love remote work.
I did go for the m2 drive so I could fit the upgraded battery, which is about the max size you can fly with. I love that laptop and to me it's the closest you can get to an MBP.
If you're going to send a group of people armed with guns into a harmless but tense situation there's at least a chance that something really bad is going to happen.
And for sure it shouldn't be like that, where cops can and will shoot you given any justification. But "swatting" isn't a funny prank at all and it's sickening that it's even a thing.
That is literally all I did when I was a financial analyst and is how I became a programmer. This should be automatic, I thought.
By far a bigger problem is manufacturers shipping their own version of Android that is sometimes incompatible with the SDK. I've had to implement some ugly hacks for Samsung before, which is unfortunate because of how popular their hardware is. It's becoming less of a problem over time though.
Farmers can't make money when corn is down at $3.50 a bushel (futures). And local prices are much, much lower because the elevators are full from back to back record crops. We have a $.60 basis in my area, which is historically very high.
What's good for farming is no longer good for farmers. Their best recent year was 2012, a 100 year drought when corn prices went north of $8. We had 120bu corn in 2012, which is $960/ac revenue. This year even at 200bu corn we'd be looking at about $600/ac revenue. Good luck with that. You're just farming for insurance payments at that point.
And I forgot to mention that about 40% of all corn use goes to gas tanks as ethanol (the rest is about 40% livestock feed and 15% exports). So even with that demand source, which is itself a dumb idea, we can't clear the market at a price farmers can live on.