537 karma · joined December 31, 2017
Out of curiosity why is writing everything as a single element type more ergonomic? I’ve not done frontend web dev in a while and using <p> <h1> and so on seems like it would be more ergonomic to express intent.
We use ui tests specifically for testing accessibility, analytics and data passed along during navigation.
We use fixtures for all of this.
None of these tests really help with bugs. What they do help with is:
- Making sure the ui stays really decoupled from the business logic. This helps a lot with getting the data unit tested which does help a lot with bugs.
- Making sure that analytics and accessibility are not forgotten about. This helps a ton when refactoring.
- Making the intent of the code really clear during review.
It takes a bit of practice and being ruthless about removing/fixing stuff that’s not helping. I have found it makes it much easier for new developers to work, review code and understand how the code is organized. YMMV.
Alfred can either replace spotlite or run along side it. I’ve found it much faster and easier to use. You can customize it pretty well. (Just don’t download the Mac App Store version as it’s multiple versions behind)
There’s a ton of windows managers out there that help you setup hot keys or modify windows to work how you want. Mac overall is much better with native software not doing its own thing than windows so changes tend to be pretty consistent. I’m using MOOM because it’s on the app store and lets me hotkey all my windows into specific sizes but there’s plenty of other stuff out there depending on what you want to do.
The bonus of doing things like this is that if you are constantly changing your code then it becomes battle hardened to accept change. This gives you better ability to keep up with the changing demands of both customers and technology.
It’s kind of fascinating to me that things have ended up like this. There was a period where Facebook was incredibly bland because people were using their real names. At some point that boundary got crossed and now most of what I see when I look at it is excoworkers who would have never gone on about politics around the workplace trying to get their message across. The rest of the people I followed who posted interesting moments about their lives have stopped posting altogether.
With Reddit meanwhile you can easily select the subjects you are interested in and there’s a bottomless pit of people who can post and comment on that. While it being mostly text based will probably limit how big it can get compared to something like TikTok I suspect there’s a better slow and steady business model with less churn.
I also really like that they offer a monthly sub at a fair price that removes the ad problem. I really wish more companies would take this sort of approach.
Those were so awesome because they explained the whole system. The core graphics one was an absolute lifesaver when I started working with iOS. Apples UI a frameworks seemed way more complex than anything I’d ever worked with before but once I understood the layers they started to click. I don’t know what I would have done with a bunch of class guides with patchy comments.
There’s nothing wrong with wanting to take pride in your work and to have working conditions that facilitate that. Get enough people together who feel that way and can find something useful to build and you get a huge competitive advantage. Software that is useful and performant is like gold but takes a lot of extra effort and passion to keep it that way.
You’re right about the “fun” part though. Making great software (and art) is hard work! “Satisfying” is probably a better metric to shoot for.
I don’t know your role or the expectations at a FAANG but chances are all these messages you are trying to keep up on are keeping you from doing something else that would be more valuable to both your mental health and the company.
If you can set boundaries I would do so. Some things that have helped me:
- Asked my boss what was absolutely important for real time communication and turned off notifications for everything else.
- Aggressively using my status for work. I block my calendar between 8am-12pm and put “programming” in my status with notifications turned off. If there’s a real fire slack lets you “send anyway”.
- I try to put time aside in my day to dedicate to paperwork type stuff. This includes slack, email, hr stuff and so on. This really helps me because I’m not constantly context shifting and can give the appropriate time towards anything being asked of me. It also helps with perceived tone as I don’t read the message feeling resentful.
This sort of stuff is easier said than done and you have to figure out what works best for your situation. At the end of the day most things can wait a bit and actually work out better when there’s a bit of time to process and think about them. A lot of people have just forgotten.
The best I have found for stuff like you are dealing with is to put the questions I have in a team/public slack channel and make sure the docs/designs are updated when the question is answered. This will be easier with some groups than others.
I have worked with a few juniors who actually were better than everyone. In all cases they were approachable, humble, asked questions and then were swooped up by a company like google.