For me coding is kind of an anarchist activity. Computers can very powerful machines and we can teach them to do anything and it seems the only rules are theroretical limits.. I think it can be exhilarating and incredibly fun. But at work.. we work on uninspiring JIRA tickets and write boring unit tests and even more boring documentation.. it's just not quite the same. That's why I code at home, too ;)
(And probably the whole Agile methodology is part of the problem, too.)
When I was struggling with some areas of maths at uni I realized, after checking other sources/books, that it was mostly due to how it was presented to me. After getting a fresh perspective most of it suddenly became obvious and I had learned it.
I believe people's brains function differently enough, that they, to some extent at least, need to have somewhat tailored material to their "brain type".
LLM AI is great because it can be asked again and again to describe things differently. That's what makes it so powerful as a learning tool.
The interactive element itself could be really powerful. If you could put some restrictions on how much of the answer it can give you all at once, it's the perfect incremental learning tool.
Gaming isn’t really a good fit for AR glasses. The field of view isn’t great and you have to deal with additive light mixing in.
The killer app for AR glasses will be a smartwatch on your face with a camera.
Notifications that don’t have you looking away from your current task, the ability to ask a virtual assistant about something or even what’s in front of you.
Imho, one of the best things about my smart watch has been how much less I pull out my phone and get distracted by stuff. It’s a quick glance down to see if I should care.
But that’s still me breaking from my current task, perhaps mid conversation which can be rude, but also I’ma manager so I have to keep on top of many things.
Being able to have that quick update but not break from my task is going to be the killer feature I think for the vast majority of people. It can potentially solve the conflict of wanting to be connected to everything at once vs being connected to the moment.
The alternative is that you have them on a device you need to take out or look away for.
You’d still be able to silence notifications of course. People always imagine a barrage of notifications, but we’ve had years of leading up to this with notification groups, summaries, focus modes etc
You're forced to deal with it. If you've set an alarm, it's going to interrupt your work, or don't set the alarm. If every social media message is going to your watch, laptop, or phone you either learn to ignore them (making real alarms useless) or you have a focus mode that only passes on the ones you want (from close family?).
If you mean having a big current time, calendar, etc home screen, then I agree AR would be different, and more transparent unless you're actively using it. It's going to have to be, because power consumption for a display bright enough you can see it outside is going to be a big weight/runtime issue.
I experienced one literally minutes ago after doing a guided tour at Pompeii.
I want an AR tour guide. It should know where I am and give me the relevant commentary to the ruins I am at. Following me, not vice versa.
Ideally if there are several in my group then I want the commentaries synced.
When I walk to an intersection, I want to see what's on offer, with preview, if I turn left vs right.
I want to look at the frescos and crumbling walls and see virtual reconstructions. Extra points for knowledgeable citizens from the past walking up and interacting.
The killer app for me is unchaining myself from a desk. I just can’t work effectively on a laptop screen, so while I’d love to go work while sitting at the beach or in a park or whatever, I just can’t do that right now.
The computer came since the 80s though the real killer app was the internet which came much later. Smartphones were around way before we figured out what they were great for.
The one thing I don't get though is the expectation that AR/VR must be for everything and everyone. I don't think that will be the case at least until the tech can mature at least a decade. Doesn't mean it can't add value in specific usecases though.
The PC was already ginormous in its own right way before the internet came along though. Not to say the internet didn't propel it again an order of magnitude but it didn't need the internet to become huge.
I would start with a college/university course on the topic, there should be tons of slides and lectures available for free. And only after knowing basic concepts and common approaches I would look for some recent documents, probably they can be downloaded from Intel and other chip makers. But I would say that it all depends on where you are starting from and how deep you want to go.
A friend once in the middle of a technical interview stopped speaking, stood up and went out. They ran after him, "what's wrong, you're doing fine!" and he told them it depresses him too much and he's not interested anymore. Sad, given that this is a fun profession for most of us (I assume)
I've done the same thing, at a games company well-known for its perks and benefits, but also its crazy production schedules .. I thought I wanted to work there, and up until about half-way through the interview, I did, but then out came the whiteboard and in came the peers to see me implement basic things in pen, and actually it felt like a ritualized mobbing, because as I progressed through their challenges, things got more and more antagonistic and downright rude, and I realized they were testing me to see if I could deal with vitriol and hostility while producing technically minor results .. I simply stopped the interview, stood up, and said "I've made my decision, I don't really want to work with you guys now that I've seen how things are done, thanks for the opportunity and sorry to waste our time" .. and walked out.
The CEO chased me out into the parking lot and begged me to tell him what I saw and why the interview went awry. He was legitimately shocked that an interviewee could make such a decision, mid-interview .. All I could tell him was that it wasn't going to be a great fit, the culture didn't seem aligned, and the people who were brought in to the interview seemed desperate and hostile to each other - and that simply wasn't the way I had hoped that the company operated.
People forget that job interviews are a two-way street.
I realized that day that I have every right to inspect all aspects of a company that I might work for, and that I don't really have to make compromises if I see something negative during the process. It was the right decision because the very next day, at another competing firm, I met folks who have continued to be good, close friends and colleagues, whom I actually really enjoy being around.
This profession is fun. But when the fun gets farmed and exploited, its enslavement like any other.
Fortunately I never had a leetcode style interview. But I once interviewed at a place a friend worked at and they needed someone to bring their development up to speed (re-architecture, establishing processes, technical lead) and he recommended me for that. The interview partner was their new CTO (joined the company 2 months prior). From the start of the talk he was acting almighty and acted like I should be thankful for the opportunity I have been given. He was asking misleading technical questions. I was super confused first because I assumed malice first ("He is trying to trick me!") but as the interview continued I figured out that he really had no clue what he was taking about. Later during the interview I should describe my experience and I told him about the retail app suite I was the lead dev of for about 2y (POS software + back office + SAP interfaces). He proceeded to tell me that sounds quite nice, but the previous company he worked at did one million transactions per month - hah, eat that stupid peon! I was confused yet again, because that is really tiny? I told him that the project I led did that in a day. He accused me of lying. At that point I politely pointed out that we are not a good fit and wished him the best. 30 mins later my friend called me to ask what happened. The CTO apparently told everyone how poorly I behaved and how measly my skills are. When I told him about what really happened he was quite shocked. He talked to the CEO who did call me next day. I told him a sugarcoated version of what happened. A week later the new CTO was gone. According to my friend he also behaved to other employees in a similar way. The whole story is bizarre.
I had an interview for a company in the south of England a long time ago. The first half went okay, then in the second half the whiteboard came out, and I was asked to "implement C++ object oriented method dispatch in C" with a chunky marker pen. I mean, it's not exactly a rocket science question, but it's not easy either (on a whiteboard, with a chunky pen), and in the end it just felt like it was some weird hazing rather than any test of my actual software development or programming ability.
I stayed in the interview, went home, never heard from them again. I ended up getting a job at a different studio that had a slightly saner technical interview, and after I started there, I heard the first place had gone bankrupt! Sometimes you just dodge bullets...
Depending on the specific job role, I actually like that interview question.
It tests knowledge of the C++ vtable and function pointers, which is probably a good marker for intermediate-level C++ knowledge. Especially for debugging some heinous bugs.
It tests knowledge of how C++ itself is implemented. That's not really something most people study or prepare for unless they work on C++ compilers. I wouldn't call knowing how vtables are implemented intermediate-level C++ knowledge, and I never again encountered it despite spending another ... 5-6 years writing C++ code afterwards.
It's intellectually interesting for sure, I think depending on how it's introduced it could make an interesting discussion in an interview. But asking someone to implement them from scratch on a whiteboard? Come on. :)
(1) occasionally show up in learning materials regarding virtual methods, virtual inheritance, static vs. dynamic types, and RTTI, and
(2) sometimes understanding them is very helpful when debugging gnarly problems, especially with objects that have been wrongly typecast. I.e., you can inspect vtables in gdb.
Maybe the takeaway here is that C++ is a huge topic, and different people have had to learn different details.
> I realized that day that I have every right to inspect all aspects of a company that I might work for, and that I don't really have to make compromises if I see something negative during the process.
I think this is really contingent on your negotiating position.
I've been unemployed for over a year. The lower my savings get, the less picky I can be about potential employers.
I've been ~2 months from missing rent having to move my family into a van. At that level of desperation, you're willing to stomach a lot of non-ideal companies. If I didn't get that (as it turns out, terrible) programming job, my next step would have been to try to get a job stocking shelves at Home Depot.
Holy hell. Wow that's harsh, I'm super glad you are employed now (even a terrible programming job is better than a home depot job) and that ordeal is behind you.
This lousy economic cycle will eventually reverse a bit and we will hopefully all have some more leeway to find better employment.
Done a similar thing in a Zoom interview. I had a horrible hard Leetcode question, was completely stuck and was getting nowhere (neither did the interviewers seemed keen on helping me out). I told them hey thanks this isn't my day I want to quit the interview - at this point they really tried hard to make me stay for the rest of the time. I think if a candidate wants out - you should let him.
I was referred to this company through a past colleague that was currently working there so it's possible they didn't want to bum out this person, but I actually don't think that was that - they looked genuinely surprised and a bit shocked when I wanted to stop which I can understand, it's not something that happens often at all. I think they just felt it was 'wrong' for an interview to be stopped short by the candidate and tried to rectify the situation.
(And probably the whole Agile methodology is part of the problem, too.)