"Nobody is hiring high school chemistry teachers any more so I made my own meth lab empire."
@gunt-herАй бұрын
relatable
@fuzzy-02Ай бұрын
@@JonnyJKF asmongold editor 'Jesus Christ!' sfx
@TheFoyer13Ай бұрын
nailed it
@ptf42069Ай бұрын
yo, Mr. White.
@THESJSАй бұрын
biach (lets pretend the a is t)
@mq5432Ай бұрын
nobody hires sr. dev so I made a hello world app
@not_a_cool_handleАй бұрын
I made a hello universe app
@do8456Ай бұрын
Nobody hires jr web developers so I made a poorly done animation in AfterEffects Nobody hires jr game designers so I made a mediocre Twitter /Shopify clone
@sarevokerАй бұрын
HAHAHAHA
@ReavenkАй бұрын
@@not_a_cool_handle "I scaled up the app; see, 3 extra letters and a larger noun." I used to do R&D and had a pathological term called "hello-universitus" with how some tech-illiterate project managers fawn over junior projects that just reimplement simple tutorials with a few parameters changed. Which is a whatever thing in itself, until managers start shuffling around resources and ignore arguments about how it's not actually the next big thing, and then act surprised like nobody told them repeatedly point-blank when it blows up in their face a month later, and then repeat this pattern ad-nauseam like they're incapable of learning - especially since it's from a small army of managers that enable each other.
@chanhokim7750Ай бұрын
Using rust
@Dylan_thebrand_slayer_MulveinyАй бұрын
Interviewer: "That's all very nice. But you couldn't do a quick sort on the whiteboard so we're going with a different candidate. "
@stylishskater92Ай бұрын
Yes, but did you check the company? They are the number one manufacturer of quick sort in the country!
@SlavaThereshinАй бұрын
It's a great game and all, but the only quantifiable metric of SW.Eng. quality is quicksort implementation on this very whiteboard. This interview is over, thank you for your time.
@DavidWoodMusic24 күн бұрын
"I can, but I won't. Thank you for your time."
@S-we2gp20 күн бұрын
@@SlavaThereshin 😂😂😂
@milanlabus158219 күн бұрын
Thats nice but Jims uncle works at the company so we are going with him
@fuzzy-02Ай бұрын
Welp, time to make a todo app in Unreal Engine 5 with jiggle physics
@OldTomato44Ай бұрын
That's actually a great idea lol - it would be memorable for sure
@zakhoskins6404Ай бұрын
Sounds complicated. I can never remember anything once jiggle physics is involved.
@fuzzy-02Ай бұрын
@@zakhoskins6404 what's complicated? What are we talking about? (xd)
@lukasz96Ай бұрын
@@fuzzy-02 The "(xd)" made me cringe so hard, my f god. YIKES
@erincarson899826 күн бұрын
"Gel-o-Do" Make your tasks gel.
@Mayday-cr7prАй бұрын
Nobody hires nuclear engineers under 45 so I made a bomb.
@chrisstucker1813Ай бұрын
Nobody hires prostitutes anymore so I…actually, never mind.
@DemiuuuАй бұрын
This works, the recruiters will come to you(r house)
@kelvintakyi-bobi3155Ай бұрын
@@Demiuuu😂😂😂
@XDarkGreyXАй бұрын
Forgotten craft in some countries
@surajgurav1303Ай бұрын
Getting wrongly inspired is such Pakistan thing to do
@andyschannel687Ай бұрын
This sounds very familiar. I spent 6 months looking for a job after recently getting laid off. After about 60 rejections I decided to make a game. I started by trying to make a multiplayer RTS and spent about 3 months working on that and gave up after realizing it would take me too long to finish so I changed focus. I decided to focus on making smaller sized local/multiplayer games. I made 3 games in the last 3 months. Each game uses split-screen and supports up to 4 players. So now it's a year later I still don't have a job, but at least I made some games.
@m.o.o.n.c.a.k.eАй бұрын
is this real? I feel like poop been looking for a junior web dev job since March 2024 I'm still without a job... maybe I will never get something or I guess I should really expect anything...so frustrating
@doleo_metalАй бұрын
@@m.o.o.n.c.a.k.e i think it's just bad timing with the job market. Demand will cycle up again
@andyschannel687Ай бұрын
@@m.o.o.n.c.a.k.e Yes, but my biggest problem is I'm a senior dev and most of my skills are out of date. So if you are a junior dev, I think you might have an advantage being that your skills are better fit to the market.
@andyschannel687Ай бұрын
I'm trying to learn React right now, and I hate it so much. Just give me vanillaJS and jquery and I'll work some magic for a website, but all these modern frameworks drive me crazy.
@kelvintakyi-bobi3155Ай бұрын
@@andyschannel687try learning svelte instead
@deminc314Ай бұрын
"If you have a remotely competent interviewer..." Welp... We're screwed...
@omsrswtАй бұрын
at this point i would celebrate with champagne if i got one interview
@do8456Ай бұрын
@@omsrswt There are no competent interviewers, at best they can weed out most of the poor performers without inadvertently tossing talented people. There is almost zero chance they can identify top talent in an interview
@omsrswtАй бұрын
@@do8456 i'm a decent coder but a better talker; i just want to talk to a human for once
@jonathan2847Ай бұрын
I'm pretty sure I've been rejected from jobs because I couldn't describe the Linux file system. Its stupid because people really just know what they work on, if you ask people about stuff they don't work on their obviously not going to know it. Why ask people about things not on their CV if they knew it it'd be on their CV. It's just replacing leetcode with trivia.
@burhanbudak6041Ай бұрын
Yeah, HR sucks and they have zero accountability when they fail to find good people, they look only at personality.
@mindasbАй бұрын
"but it does not mean our story ends here" is such a beautiful phrase. Props to HR who came up with it.
@darklajidАй бұрын
The amount of time that went into the video production and visuals _on top of the game_ is mind-blowing. Amazing find!
@AQDuckАй бұрын
I made a website so interactive you could change basically every aspect of it. It even had a physics engine and was so modular I could add a new feature/mini-app in less time it takes to deploy the docker image. It was also my first ever web project. I couldn't get a job because I didn't have any prior work experience.
@jermaineholmes1233Ай бұрын
Story of the market these days lol
@thewiirocksАй бұрын
I assume by your use of past tense you have since achieved employment?
@AQDuckАй бұрын
@@thewiirocks Nope, started studying Java because the job gap was getting too big. *Edit in case Prime somehow sees this:* I didn't have a choice! It was that or working at a callcenter.
@muhammadzohan4436Ай бұрын
@@AQDuck HERESY!
@tomcorwine3091Ай бұрын
My absolute favorite interview format (on either side of the table) is a review of a project the candidate made on their own. The candidate is usually at easy since they’re talking about something they’re familiar with, and the interviewer can judge code quality, decision making, tradeoff evaluation, library selection, etc. It also allows for great conversation.
@wmouseАй бұрын
It's much more realistic too. I could talk a long time about all sorts of topics that relate to actual project work at my job. I can discuss the pros and cons of an array of technical decisions in depth with my coworkers. What I cannot do is design a system in 15 minutes for something I've never ever thought about before while a bunch of judgemental strangers breathe down my neck.
@draketheduelist21 күн бұрын
This would completely hose me over. My "pet project" is an app to calculate the nutrition facts of my homemade curry. It's a _console app._ I literally didn't need anything sexy or elaborate, and I hard-coded the nutrition facts into the code anyway. If I feel particularly lazy, I hard code the ingredient _amount._ I didn't make it to impress anyone. I made it to solve a problem. I don't have big sexy impressive-looking projects because I don't have big dreams anymore. And I don't have big dreams because I don't have hope.
@milanlabus158219 күн бұрын
In reality: Please reverse this binary tree with pen and paper, you have 5 minutes
@wmouse19 күн бұрын
@@milanlabus1582 Turn the paper upside down and hand it back.
@VintagestepАй бұрын
I like how he introduced it, he introduced the features or mechanics of the game clearly, like bullet points. Later on, these will become the requirements of the program, solid start. If he doesn't have a job yet then I don't what wrong with this world, I'm only 10 minutes in and I can see he's quite competent, maybe he might lack strong personal and sales skills to take hirers to his turf, but otherwise, this guy would be a good asset for most companies.
@computernerd8157Ай бұрын
The only thing wrong with him is nobody hired him because he has no exprience this world is a joke.
@neon2633Ай бұрын
This is one of the things I’ve understood late as a self-taught. Programming is just identifying your problem and the data at hand then coming up with a solution. This is all done without even touching code. Data Oriented Design video really enlightened me on this.
@StefanHanrathАй бұрын
It is mostly due to the kabuki theater on the hiring side, the hiring funnel in a bunch of orgs isn’t great. They cannot decide if they want generalists or specialists, or they throw out an enormously wide net for early funnel stages and bag more candidates early in the pipeline than they can ever screen by hand. Thus promising candidates like this can get their resume auto-rejected, because they wanted to have 10k candidates in the pipeline.
@VintagestepАй бұрын
@@StefanHanrath Absolutely, I can see that happen, and since I guess they work like consulting companies they get paid even if projects suffer because or how they handle the hiring process, they're likely to use the number of applications "reviewed" to milk more money from their clients while offering very low value to the job market.
@EdmondDantèsDEАй бұрын
I counted 8 rejections. Those are rookie numbers.
@ExilumАй бұрын
Most companies in the game industries staight up never email you when they reject you. Most of the time they only email you if you got an interview and then didn't pass. After resume screening they just don't care.
@macchiato_1881Ай бұрын
@@Exilumhey, this sounds like 95% every company I sent an application to. Weird coincidence.
@EdmondDantèsDEАй бұрын
@@Exilum Was he applying to game dev companies? I just assumed he was a web dev. The languages he chose support that assumption.
@mango_water169Ай бұрын
Should be enough to get the point
@cesarrodrigoramirezfranco5740Ай бұрын
Because only those 8 companies gave a response
@macchiato_1881Ай бұрын
We live in a world where psychology degrees and business majors get more job security and job availability in tech company positions than the developers themselves. What a time to be alive.
@do8456Ай бұрын
Some people know how to make money and run a business, some people know how to write code. Few can do both well.
@masterflitzerАй бұрын
@@do8456 it's not about running a business oneself, it's about getting a job at a business
@do8456Ай бұрын
@@masterflitzer You can be the best Haskell or Cobalt programmer but if your skills are not in demand you have a hard time finding a job. The same applies to javascript, c++, or whatever else you do. Being good at running a business and making money, getting sales, that will always be valuable. Full stack wannabes are a dime a dozen.
@masterflitzerАй бұрын
@@do8456 yeah of course demand decides it, but imagine the demand is thete, but they just fire senior to hire mid level engineer to save money and also don't hire juniors because they're to inexperienced, that's what's happening in the entire industry, i experienced it first hand (multiple senior devs in my team disappearing)
@mustafaemin7389Ай бұрын
If the person is good in software development then companies will hire the person. Everything is about can you make money for the company
@IloveGod-q4qАй бұрын
Every employer when they see this, they will just swipe over it, thinking we not making games here.
@SBqwertyАй бұрын
Key up/down: animation on keydown, action on key-up. Depends on the nature of the application - if mistakes are punished, if speed is necessary, etc
@yjlomАй бұрын
action on keydown allows for hold-to-repeat keybinds action on keyup allows for using anything as a modifier
@funkdefied1Ай бұрын
My boss will click down on a link and linger for a good 2-3 seconds before releasing. It’s a form of gut-check, I think. He really depends on the “animation on key-down, action on key-up”
@SimGuntherАй бұрын
nobody hires principal engineer so I made a OS
@TravisBerthelotАй бұрын
What OS did you make?
@VEAFYАй бұрын
@@TravisBerthelottemple os
@TravisBerthelotАй бұрын
@@VEAFY May "Terry A. Davis" RIP.
@JonnyJKFАй бұрын
@@TravisBerthelot Hannah Montana Temple
@MrMysticphantomАй бұрын
This... Hurts... Didn't do the OS yet ..but I feel like I now have to.......
@vsueiroАй бұрын
Loved the distinction between “Jr” being based on your *professional* experience - not based of how good you are. I’m halfway through the video and this man KNOWS HIS STUFF
@BrayanRuiz-m3wАй бұрын
Then they ask him to do a medium LC question and he doesn't pass it because he didn't have the time to study for making the game
@YaroslavFedevychАй бұрын
So these are expectations for a junior dev now? Right? Right?
@realharoАй бұрын
I mean, sure? I didn't see any part here that a competent junior dev wouldn't be able to do.
@computernerd8157Ай бұрын
Keep in mind, if this guy is not trying to be a game dev, he will still have issue in a web dev role simply because its not a web project. I am not sure how game dev jobs will treat him. If they act the same then its even tougher. For example I made a game in Godot. If I apply to a company that uses Unity, I wonder if they will pass on me lol.
@PackeseltАй бұрын
@computernerd8157 I'd sure hire him over someone who didn't have a project though
@computernerd8157Ай бұрын
@@Packeselt I would as well, if I was in that position.
@OneDerscoreOnederАй бұрын
@@computernerd8157dude what are you talking about. If he can figure this out he could figure out anything in web dev.
@neilhatlyАй бұрын
Bear in mind this dude created the presentation too.
@silverado_vilaАй бұрын
Nowadays it's harder to get to the interviewer, you know, the person that understands what the job is about. Most people will fail at the ATS review, which is the non-human part of the process. Oh, and I hope you never have to do an interview with an interviewer who clearly doesn't want to be there. Had way to many of these in my life.
@macro776Ай бұрын
Dont forget tho that the interviewers are meant to “act” like they don’t care to see how people work under pressure
@henrykkaufman1488Ай бұрын
You act on press in action games and on release in strategy / turn based. Cool video. Can't believe this guy had problems with getting hired. He's 10x dev junior.
@snakefinnАй бұрын
You can be a 100x developer but if you can't get in front of the interviewer or hiring manager there is no chance
@henrykkaufman1488Ай бұрын
@@snakefinn I don't think this happens in my place. Is it because he tries to get to a place where they arent hiring or because of AI and automatic rejection because of experience requirements?
@Jonatron101Ай бұрын
This makes sense, moving off on release has saved my butt in XCOM soooo many times.
@henrykkaufman1488Ай бұрын
@@Jonatron101 exactly, you wanna be sure of your choice in strategy games, and you dont want to press anything by mistake
@Muskar2Ай бұрын
Act on press is superior in almost every way. The primary disadvantages I know of are: 1. Misclicks cannot be avoided by superusers -> Solution: require additional confirmation action, or make the action readily undoable 2. Misclicks are more expensive in poorly performing apps -> Solution: maintain a lean performance-aware codebase, which is hard if it's already bloated dependency bridging
@krux02Ай бұрын
Making a game isn't just hard, it is also quite easy to review the competence. Great value there.
@AllthingslearninggАй бұрын
That guy is not making a game for the first time, and thats pretty clear!!!! Internet is full of imposters!
@ENCRYPTaBITАй бұрын
Omg I just watched this and now you're covering it sick. On the note of getting hired: This is exactly how I got hired. After 8 months of endless rejections and studying and leetcode grinding, I didn't write a single line of code to get hired here. Instead my interviewer asked me to talk about my magnum opus at my last gig, which was breaking apart a monolith into microfrontends, stitching them together with module federation and using a shared library to manage state between all of them which was super cool to me because I had never even heard of module federation before they tasked me with research and implementation.
@OthilionАй бұрын
The debate about whether to act on button press ("down") or button release reminds me of my experiences playing RTS and MMO games. I recall using an add-on that triggered skills immediately on the key press (down event) rather than default release event. It felt more responsive and felt like a slight reaction-time advantage, which matters in competitive play. For any regular work situation? No way...
@MrXaxenАй бұрын
The conversation really depends on the context. What prime came up with, the whole mouse down cancel stuff is perfectly valid, i use it myself sometimes. It is actually a good and considerate way of doing mouse realated actions imo. But when i'm trying to strafe shoot in a fast paced competitive FPS game, that better not have a movement action on release, cause there will be blood.
@asdfqwerty14587Ай бұрын
Mostly it comes down to "how important is it to do it quickly". In action games/FPS games and the like, doing it quickly is really important, so it should be on press. In a turn based strategy game.. doing it quickly isn't important at all, so it being on release to reduce the chance of misclicks is fine.
@ErazerPTАй бұрын
The onPress and onRelease issue is pointless when devoid of context. If want your gun to fire on press, but you probably more comfy with your grenade starting on release. You probably don't care much if your motor starts on press or on release, but you CERTAINLY want your emergency stop button to work on press.
@CalamityStarForceАй бұрын
My first big solo project was a multiplayer turn based strategy game, Nodrog's Fortress. It taught me so much despite being unsuccessful commercially so far. I wouldn't trade that experience for anything though. Just go build something that sparks your passion and I promise you will level up.
@AL-kb3cbАй бұрын
If this guy didn't get hired, you won't.
@guilhermewhite7274Ай бұрын
i have been on computer science for 1 year looking for a internship role, i literally never got a interview, seriously been thinking on giving up on life, i just wanna learn in action
@klausebaАй бұрын
I gave up on web dev after 4 years of learning. My advide is go where there is a high demand and low competition like a Service Desk. Learning never stops so it doesn't really matter on the long run that these X years are really bad for certain jobs. Just like how there are 1000 men for 1 woman on dating apps, there's lots of applicants for 1 job. So go where there are less men to women ratio, like the nursing home :))
@sunggwanchoi5729Ай бұрын
20 years ago: fizzbuzz 2024: No One Hires Jr Devs So I Made A Game
@WileeRunner42Ай бұрын
A cool part of making the video, he is presenting his tech interview. He could put a link in his resume.
@silverado_vilaАй бұрын
No one would watch it tho. Most jobs postings are automated, they ask for your portfolio and never look at it. it's a shame really
@manofacertainrage856Ай бұрын
So he coded this and also has the presentation skills at 3:30 to make this look like polished training. I thought I was faking before, now I know for sure...
@voskresenie-Ай бұрын
don't feel down, try doing something similar. I bet he didn't know how to do most of this stuff when he started building it, either. Even if you don't get something this polished, as long as you don't quit when you encounter the first difficulty, you'll figure it out. if the graphics seem too complicated you to figure out right now, start with an ascii game that completely redraws the screen on every change. then you can focus on just the game logic. separate the drawing logic from the game logic with an interface and then you can more easily swap it out if you later decide to use graphics. build the smallest amount that is necessary to get a running game as a starting point, then improve from there.
@mikocst16 күн бұрын
I appreciate you analyzing this content. It made me realize that I should build something that's for real real that's intentional and solves a problem. I decided to jump into react since I'm a front-end developer and I'm making a component library. My thought process was to make website the users can view components, view the source code, and a breakdown of why the component was designed / animated the way it was. I also plan on having a page about the library and talking about the thoughts of designing and coding it from scratch. Thanks for inspiring me / highlighting this video. Love the analysis from you and the breakdown of kodestan going through their project. Super cool to watch through.
@shinjiku144Ай бұрын
8yrs experience but I may as well be junior dev since I never finished my degree. Its hard out here to find work guys.
@Dr_SpeedyАй бұрын
"Do something for real real" Yea this is the biggest thing I look for when hiring. If you've got real projects and can walk me through your logic on a couple of examples, you're in.
@viliml2763Ай бұрын
What if I don't have any ideas for projects?
@Muskar2Ай бұрын
@@viliml2763 There's such an abundance of valuable things to do.
@ciekawki657429 күн бұрын
@@viliml2763 Make a game :)
@milanlabus158219 күн бұрын
@@viliml2763 Copy someone elses project, its not illegal to copy design for a personal project
@rod6722Ай бұрын
No one hires junior devs, so I'm making a Game Boy emulator.
@stevez5134Ай бұрын
I'm thinking to make an NES game with WiFi so the game state is synced up to a couple of bytes and runs like a normal game
@zander008Ай бұрын
Man that multiple sine wave trick for the shake is beautiful! Love this video!
@Drakon0BladeАй бұрын
About the reconnect: theres an old RTS game from the turn of the century called Kohan: Immortal Sovereigns that has a beautiful lag and disconnect tolerance system; it'd be worth a look for a reverse engineer. The game will sit there an wait until everyone gets reconnected and synced up, couple friends and I played a match for three hours with three ai players and the game never dropped; we had a few pauses for the resync sure, but we were able to finish the entire three hour match. Cool system and an amazing strategy game that's complex but not complicated to play.
@Dolanor24 күн бұрын
This guy is so good not only on the tech side, but also on video communication/editing, making concepts approachable. What a guy!
@fremanАй бұрын
Hex grid is still a 2x2 grid, just rendered 50% off on every other row. on-press if there's no or neglegable cost, on-release if there's a cost (ie: changing tabs vs downloading a file or unlimited moves vs limited moves)
@freezingcicada6852Ай бұрын
I dont like Hex grid games; usually like the simplicity of 2x2 but for a tank game I think its makes sense Cause you can track 8 direction facing and have reduced/front, normal/side, increased/back damage. Or some of other game mechanics tied to that idea Also why you have to be the ackshually guy?
@fremanАй бұрын
@@freezingcicada6852 he was musing on the subject, I added my musings...
@qwerty81808Ай бұрын
Except with (up to) 6 neighbors instead of 4
@k98killerАй бұрын
A hex grid properly implemented is actually a 3-axis grid system that can be modeled as the surface of a cube. Trying to do it with a staggered 2x2 will result in all sots of hacky math issues.
@rantallion-hr5xpАй бұрын
@@freezingcicada6852 what's 2x2?
@niclashАй бұрын
I hired a dude on the spot because he was passionate about writing a DHCP server from scratch. Passion and non-trivial challenge -> job
@coelhoigor29 күн бұрын
I'm so inspired by what you said and I'm not even a developer (just a hobbyist).
@test-rj2vl29 күн бұрын
When I was looking for job after university, no body cared about my passion projects. And it's not about projects being bad - they simply didn't care - they literally said they only care about how many years of experience I have and that hobby projects are not same as real work. My hobby project was fully functional content management system with advanced stuff like group based permission management and self made template engine - quite a bit more than just todo app. And to remind you - this I did during university time - no one teached me these things. Most of university projects were doable with about 100 lines of code, some even less.
@niclash28 күн бұрын
@@test-rj2vl I think in reality, you were applying for jobs in companies where you didn't want to work anyway. If you truly love programming, the employer's culture becomes more important and you would turn down offers instead. It seems that you have overcome the initial hurdle, and I hope you are happy where you are.
@ando556328 күн бұрын
@@niclash i think thats very naive, the first programming job you get now days isn't the one you want, its the one you (maybe) get. even in my country where the demand for junior devs is relatively high compared to the US it took nearly 3 months from the start of my job search to getting a job and even then it literally paid less than I was making as a cashier. (took the job because earning potential is still waaaaaaaayyy higher later on and its what I want to do). anyway, it still took me 3 months to find a job that paid less than I already made when I had a fully functioning point of sale system that handled both in-person and online transactions and a fully functioning website that could handle the online sales. thankfully I have a better job like 14 months after the fact but the first hurdle is always the initial work experience required.
@bullshitdepartment22 күн бұрын
@@niclash what is it with the whole "do what you love" thing specifically for programming? People don't work because they want to, they work to make money.
@ioplop2943Ай бұрын
Dude, the website about hexagonal grids helped me SOOO much, it's truly amazingly well comprehensive and well written
@mrchedda27 күн бұрын
No wonder I don’t have a job. I have 4 years experience in front end web application development but this is on another level.
@pixelfingersАй бұрын
I really liked your point about doing the game logic separately to the presentation/animation, structuring the code that way (for a game like this anyway with commands and visual state updates to perform) would in theory make it easier to move that on to the server (or not.) Really liked that 👍
@ashish_prajapati_trАй бұрын
Nobody hires a fresher. so I made my own startup.
@lastmanstanding5423Ай бұрын
That's exactly what I'm working on right now.
@mmmnxjsoskzkАй бұрын
same here
@notanomba4598Ай бұрын
for some reason I misread 'startup' as 'starship', i guess that could work too
@hermes6910Ай бұрын
Who doesnt make a startup in 2024 ?
@IARRCSimАй бұрын
Startups aren't that impressive. If you turn a profit that you and some employees can live comfortably from, now that's special. Starting a profitable business that lasts more than a couple years would not make you a great software developer unless you were also actually making it as part of the business. Maybe that wouldn't bother you much at that point anyway because pivoting your career would already be working for you.
@kecskemetib27 күн бұрын
0:49 This is actually a reference to a speech by John F. Kennedy about the mission to go to the Moon. The actual quote is "We choose to go to the Moon in this decade and do the other things, not because they are easy, but because they are hard".
@Jorrit_200Ай бұрын
6:12 I implemented web sockets once. it was actually a very good experience for me, and surprisingly straight forward. Web sockets (and most of http) has very well written RFC's. I learned a lot from it. took me a day or so (although I only did the bare essentials, not completely in compliance with the rfc, though I might finish it for fun). I recommend everyone to give it a try. ps: this guy definitely made the right call by making a lib handle it for him. there was no reason to get his hands dirty with it for his focus.
@paherbst524Ай бұрын
re: act on press vs release, there is no hard rule. keyboards act on press, the web acts on release. It comes down to expectations, most mouse presses are on release, to differentiate between a short or long press.
@briankarcher8338Ай бұрын
Making a multiplayer game that runs smoothly on the client while having the server maintain state is tremendously difficult. The client side needs to be responsive in an FPS. It's generally done by having things like player movement being done on both the server and client. If there's a difference, defer to the server. It's really difficult to account for things like network lag and where the player should be at any point in time. If Player A presses fire, yet the communication to the sever takes 100 ms, what did he hit? A must is to totally remove jittering movement even when the client and server are off by a bit. The problem is difficult. Good interview question for somebody who has made this type of game though. Valve has a good writeup on it for Counterstrike.
@ghevisartor6005Ай бұрын
well videos like this makes me thankful for having found a job as self taught (i dont live in the Us) and without any degree. I was very lucky with people trusting me.
@ruslansmirnov9006Ай бұрын
considering there are going to be much more layoffs of actually good developers in the upcoming years, we are gonna have so many great indie games soon - just like we had in late 80's - when game industry was done BY professionals and FOR professionals
@JesseGilbrideАй бұрын
Pertaining to the Carmack click timing thing: I think it's case-by-case, and you can assume a user interaction on many things, but there are always exceptions. I think the best ideology is that the user intended to to do the thing they did (just to set a basic axiom), so craft the UI around that. Sure, it takes more effort but it's smarter.
@Grandalf3004Ай бұрын
17:47 no, if you fire it on release then you can set it up to make sure the user hasnt dragged their mouse away from the button. this allows them to cancel the action if they accidentally misclick but hold the mouse down, and drag it away. firing immediately is unnecessary. i expect the page to wait while i hold it. thats how its been for years, and it has no bad side effects changing it because you think its more responsive will just piss users off
@Ahmad-dd6flАй бұрын
if this guy a junior, what are we ?
@theDarthLord01Ай бұрын
still in the womb
@IARRCSimАй бұрын
we are sperm cells.
@tanachunsАй бұрын
No One Hires Jr Devs and Guy on the Internet make a Tank game from scratch so I apply McDonald job.
@LOUDMOUTHTYRONE28 күн бұрын
I hadn't formed in my daddy's balls yet.
@milanlabus158219 күн бұрын
he isn't a junior nobody will hire him he still isn't good enough to be a junior according to recruiters
@vsueiroАй бұрын
The clarity and quality of those visual explanations (like the random shake one) honestly feels like something from Sebastian Lague - amazing!
@InventorOfYouTubeАй бұрын
For display, hexes are just grids where every other line is offset by half. For connectivity, you can store hexes in a grid. There just happen to be "two" below and "two" above.
@donaldslayerАй бұрын
I’m currently on a similar grind, minus the “applied to jobs at game studios” part. As much as it would be great to be part of a team, I have a very specific game I want to make, because I really want to play that game.
@danahantoiu3808Ай бұрын
most of the companies just post jobs for their investors to see that they still have a demand on developers or other roles
@glimpsee7941Ай бұрын
16:52 My favourite solution is the alternate button cancels the action. IE I left click then right click, that cancels the left click so I can release both with no effect.
@boggo3848Ай бұрын
If you store and update game state totally separately from render state you can do another neat thing (beyond the 'scrubbing'). You can run an entire replay of the game deterministically, which is the beginnings of implementing lockstep multiplayer and effectively testing it for desyncs. If you use deterministic physics or some kind of horrible hack to make floats cross-platform deterministic it all magically works.
@xtieburnАй бұрын
Triggering on down is essential in many games (Particularly FPS) because people are working at the limits of their reflexes and you need the game to be highly responsive. Thats not quite so critical if you are just selecting an action in an application or even a turn based strategy or some such. Then you have to weigh it up against backing out of a miss-click. I.e. Id argue its context specific.
@prozacgodretroАй бұрын
This guy is great. Who's gonna tell him that he'll get a job, but never once exercise anything close to that level of intricacy... from the software side of dev -- stage 1: it feels like 90% is just make a form for a customer, make it look the way they want it, make it store data with an api... stage 2: update user interface to limit the range of a numerical type, make it so the form inputs can't contain some characters, make it calculate things more on the front end... reduce page reloads... etc...
@jordanjackson6151Ай бұрын
The past couple of days before seeing this, I've been designing some NES looking (or maybe Sega Master System looking....?) tank style game just for fun. Maybe more like TNK3 or Granada (Anyone remember those)? Been using Lua with a LOVE 2D framework. Everything here is light years ahead of what I'm currently able to do. So I'm glad to see this.
@BoredyTF2Ай бұрын
The explanation at 34:36 is actually mind-blowingly helpful as I'm currently in the early stages of developing a game myself. I planned to implement an enemy that had motion kind of similar to a "Snatcher" or "Angry Trapper" from the jungle biome in Terraria, where its motion has a random wobbling component. This implementation, with multiple sinewaves of random frequencies summed together and then pinched with a tapering function, is perfect. I'll probably implement some kind of "Oscillation" class which can handle a variable number of dimensions, durations and max amplitudes. It could be reused not only for game entity motion, but camera shakes and even potentially UI elements as well. I did not expect to have this kind of revelation when I clicked on this video. Thanks lol
@zac9933Ай бұрын
Chat: Why is a game a good idea? Prime: Because it's hard and a lot of work Chat: You make it sound easy
@ksaw321210 күн бұрын
The fun thing about a hexagonal grid I figured out when I was working on one was that it's just a square grid in a trenchcoat. You just offset the squares slightly and behind the scenes it can work exactly the same way as a square grid would
@vast6345 күн бұрын
You also need to calculate the neighbors differently depending if you are on an even or odd row.
@ziggytheassassin5835Ай бұрын
"No ones crowning young Nobility, so i made an empire." ~ Napoleon
@idslw3489Ай бұрын
seeing videos like this makes me wanna drop everything I'm doing right now and start coding a project of this kind immediately
@reaktorleak89Ай бұрын
Bravo! I started making MotorCubs RC (early access on Steam) for the same reason. I got told I needed a shipped game to even be considered for a role, a very chicken and egg problem.
@zayniacgames24 күн бұрын
Subscribed for this video alone thanks for shoutout to gamedevs
@ks_snugglesАй бұрын
The real key is to do this level of care, but for your own actual "project" that is designed to make money. When one finally works, you are now employeed by yourself congratulations 👏🎉
@fanshawАй бұрын
UI activates on down, application logic operates on release. Click down displays the tank path, release changes the game state. Click down UI highlights the menu option, release selects the option highlighted.
@adam7802Ай бұрын
Had a go at a game myself earlier this year. I recreated pokemon (mechanics not a whole game) essentially. Well sort of anyway, I didn't finish everything and I would probably want to start from scratch rather than try finish it in its current form, I made mistakes. But damn, I learned so much... Games are incredibly complex!
@jermaineholmes1233Ай бұрын
I respect game programmers! They are wizards and gods. True masters of the craft!
@notBradYourself12 күн бұрын
This is how I got into the industry too, worked like a charm
@MeteotrixАй бұрын
for the interact on down vs release, i think you might want to have ondown for most buttons, and onrelease for buttons that are harder to undo/get out of, like start game, quit app/game, delete, etc
@Tsukasaelk1024 күн бұрын
Using sine, cosine and tangent for design was super cool the first time I saw it too :P been using fun math like that for about a year for UI element design/fx :)
@StewartW124 күн бұрын
The Hexagonal Grids web page from Red Blob Games is so comprehensive. I don't think I've seen any programming videos where hexagonal grids are used that don't mention it at least once.
@jasonkirby43Ай бұрын
This guy is amazing! One of the best vids.
@ArielLothlorien12 күн бұрын
You can do astar by flipping it and using a single map of distances to the player from the points and that way you don't have to recalculate any particular point
@khzzzzzzzzАй бұрын
Fellas the bar is getting raised
@hamm8934Ай бұрын
its been raised. this is why people are stacking up at the bottom. people will blame AI, interest rates, mass layoffs, etc.. but it really just seems like the skill floor is much higher than people expected or relative to that of other fields which require pre-requisites like a BS, masters, or PhD. if the position is open to anyone who has a computer and puts the time in to learn, then the floor will naturally rise to high, high levels.
@TudorgeableАй бұрын
@@hamm8934 and you'd be a dummy to believe it's for the benefit of the employee to keep raising the bar. Of course it's a good idea to put the time in to learn, but not for free... It's only in the interest of corporations to extract as much as possible from as little payed employees as possible. There's been an artificial influx of newcomers and now they're pinching pennies while reporting record profits... it's an old tale, a cycle that repeats everytime the rich want to get even richer, it's up to the have nots to realize they're being duped and to stop giving in their money and time for free. Nothing is free, or nothing appears free for too long. Productivity in objective terms does not exist in white collar cognitive jobs, it's a made up concept.
@hamm8934Ай бұрын
@@Tudorgeable and i'm not stating nor insinuating that it is to the benefit of the employee to raise the bar? i'm describing what has happened. when you have a field which does not require degrees, certs, etc., and is based solely on how much time a person with a computer can put in, the bar is going to raise high. even geography is no longer a part of the equation since remote work has taken hold. as such, you now have an industry that forces applicants to work non-stop, since a certification wont secure their position like say an MD will secure a physician, and allows anyone to apply to any position, as opposed to only competing locally, say for a plumper job. these are the facts and they're not changing. its going to be like this from here on out unless either (1) degrees matter again to secure your value or (2) remote work goes away. sidenote, productivity in white collar jobs 100% exists, it's just harder to measure with a metric. it just seems like your venting your frustrations on me for things i didn't say.
@musicplaylist6909Ай бұрын
@hamm8934 Nah the bar hasnt been raised. You're living in delusion. The person that made the video is not even a junior and you fell for it, that github account is his alt account and he made the youtube channel just to showcase the repository so jokes on you. Funny how you would mention that it is a "fact" that the skill requirements are raised whilst providing absolutely no statistics to support it, then proceed to mention that this is due to the accessibility of programming as a profession, which is pseudo reasoning at best. Where im from, I can tell you from official job listings accross three major listing websites, ALL the jobs for software engineerring roles required an undergraduate degree in computer science or a related engineering discipline, it is FAR from accessible to anyone with "just a computer", let alone a person who isnt even in the country.
@musicplaylist6909Ай бұрын
"even geography is no longer a part of the equation since remote work has taken hold." False statement number 1. Remote positions are very dependent on company, and many companies will not tolerate a fully remote worker nowadays, hybrid is alot more common, but around the bay area, work from home has decreased a substantial amount. "these are the facts and they're not changing. its going to be like this from here on out unless either (1) degrees matter again to secure your value" False statement number 2. Degrees still matter...ALOT for medium to big tech companies, good luck getting past resume screening without having a degree on the resume, unless you have connections that can hold the door open for you to not need to get a degree, then entering the tech industry good luck trying. " if the position is open to anyone who has a computer and puts the time in to learn, then the floor will naturally rise to high, high levels." Once again, very very detatched from reality. The fact that you think juniors are expected alot from tells me you might not even be competing in the same market, do some due dilligence and ask juniors nowadays what their entry projects look like, I assure you it is nothing as impressive as what was shown in this video.
@JayMartMediaАй бұрын
Activate on down vs. release. I think activating when releasing while over the same element that was also pressed down on may be the best balance of allowing canceling the click, but not accidentally being clicked when dragging the grid.
@fuzzy-02Ай бұрын
2:13 what if the market near me only wants frontend fullstack developer fresh graduate 4years experience can do customers support and backend maintenance
@jamesmackay6815Ай бұрын
I'm surprised you haven't automated turning off alerts
@MikkoRantalainenАй бұрын
37:00 Handling network failures is really hard but it's not optional if you want any real world users. Especially mobile users trying to use your app in a moving vehicle are going to see all kinds of errors, disconnects and timeouts. Other platforms but iOS are less unstable but none can ever be perfect because TCP can only hide problems so much even if the OS were co-operating with your app. Some mobile networks might even change the client IP address every now and then!
@madonobelАй бұрын
Business + AI raised the bar making seniors devs working both senior + junior, Business needs restructuring
@zdkamaАй бұрын
I taught myself programming by building a photo hosting website for a buddy. When I started applying for jobs, I could show them a working website that actually did a thing, that people used. I had _so much_ I could talk about. Demonstrated skills > everything else.
@ExilumАй бұрын
28:12 Not exactly but pretty close. You want to think about the server the entire time, yes, but not necessarily server first. What matters is your architecture. You need to identify what might need to be shared, what stays on the client, what stays on the server, what is in both but not synced, etc. Converting a single player game to multiplayer is insanely hard because no one thought about responsabilities and state. If you remember the entire way through that this is a multiplayer game, nothing stops you from making your first prototype single player and doing the server later. What matters is that when it comes to networking, your state is already ready to be networked, and your gameplay logic isn't tangled up.
@Switchboy1Ай бұрын
To make on release action feel snappy, just animate te button press by changing the button color. Then on release preform the action and reset te button color. Best desing in my opinion!
@Jonatron101Ай бұрын
The press/release thing, I know exactly what you mean Primagen when you're playing a game, click and feel OH SHIT THAT'S NOT WHAT I WANT and drag off. The key thing I think is if the UI element you're implementing has ireddemable strategic consequences. I usually do this most in turn-based games, they tend to move a bit slower so that delay doesn't feel bad.
@leoingsonАй бұрын
Very good video, instant fan of both of you!
@mattmerrАй бұрын
Surely A* works with two destinations if your heuristic is min(heuristic1, heuristic2)
@ruslansmirnov9006Ай бұрын
23:35 this pattern is called Entity Component System (ECS)
@freezingcicada6852Ай бұрын
Not really, A game object can just be a struct, with other structs/variables/arrays inside. ECS is more over kill making something generic/ split apart and if you do need it, its just easier with pointers then imo
@captainfordo1Ай бұрын
ECS is unnecessary complexity for 99% of cases
@megadeth_9611Ай бұрын
This is surely a junior dev bro 😭. And if he is, he definitely has been coding for a pretty long time, with the way he is able to just write stuff. I started coding last year around June, and man i am struggling. I literally scour through your repos and whatever i find on github to learn to how to write like this eventually or build stuff with ass code lmao, and this guy being able to do stuff like this as a junior is really fascinating. Also, really motivating too and gives me hope that i'll be a great engineer too someday 😭 if i keep trying and learning.
@spicynoodle7419Ай бұрын
The internet is a series of tubes. Game code is a series of ifs and fors
@jfht318Ай бұрын
Nobody hires jr. devs so I started the 4th riech against hiring managers... hol up.
@grmn3564Ай бұрын
well, there goes all the motivation I had left to keep pushing
@harshgupta7262Ай бұрын
My slow ass have been trying to implement a 2d camera following the player and finally after 2 weeks I gave up 😍
@Slashx92Ай бұрын
Lmaooo me and collision detection. Theres one single fcking bug on it that I cannot for the love of god fix. I'm learning godot now lmao
@harshgupta7262Ай бұрын
@@Slashx92 Lol, good luck to you. I have been learning the basics in vanilla js for quite some time and right now I can’t decide whether I should get started with Unity or godot.
@MonsterJuicedАй бұрын
Yea I see this guy is seriously skilled and passionate. He really knows what he's doing. I think atleast starbucks MIGHT hire him because he'll be able to get the POS system working again so they don't have to call out an engineer.