|
Post by Friendly Person :) on Nov 29, 2019 0:36:52 GMT -5
are you a nice person who regularly acts like an a**hole Wut?
I actually got off without any drama this time. We went, we ate food, we talked for an hour, we cleaned up, we left. But Christmas is just around the corner, and as we all know, karma is a b*tch.
|
|
|
Post by Friendly Person :) on Nov 30, 2019 12:27:53 GMT -5
I started my #freethewindupbird campaign. Time to see how it goes (in other words, time to see how long before it crashes and burns b/c I suck at organising people).
Of course, if you know anyone at all with any interest in Haruki Murakami, please ask for their support.
|
|
|
Post by Youngster Joey on Nov 30, 2019 21:18:14 GMT -5
So, I beat Ascension 1 with the Defect, finally, making it so that I've beaten said ascension level with all three characters. Excellent. I was feeling pretty groovy about that, since while I had cleared the other two characters easily, I'd been stuck on the Defect for quite a while. The Defect is conceptually interesting, but it's just absolutely punishing to play as.
The whole gimmick of the thing is that you have orb slots that you can fill that do damage or protect you. You can use the orbs (one-time use) or just invoke their passive effects. As you might imagine, it's kind of like money--you could use your money right away, or you could let it sit in the bank and accrue interest. But in order to accrue meaningful interest, you probably want to have a good starting sum of money. Same thing with these orbs--you want to have lots.
So, what is a person to do! Expand your orb capacity beyond the default 3! How do you do that? A specific card or a relic! What happens if you don't run into that during your playthrough? Well, you're f**ked!
Yes, ladies and gentlemen, you are f**ked. Game over, go home, just quit early, you're not making it out alive. There's no deck-building strategy to be had here without them.
But let's say you're not f**ked! You had a stroke of good luck and got more orb slots. Oh, but make no mistake, you're still f**ked, probably. Because, you see, you have to fill up your copious orb slots. You need time to set-up so that you can... oh, sorry, never mind, you died before you finished setting up. RIP. At least you tried.
In spite of the odds, however, at last, I prevailed! Hurrah! I had a rule I couldn't move onto the other 2 ascensions (which I'd unlocked) until I'd beaten the first with all 3 characters. Merrily, I graduated to ascension 2 with the Ironclad. Made it to the heart against improbable odds with a sh*t deck. Died. Meh. Inevitable.
Ascension 4 is now unlocked, the game tells me as the Ironclad collapses to the floor.
What the f**k? Another ascension?
My heart drops. If there's a fourth ascension, there has to be a fifth, because 3 levels is normal and so is 5, but a game never has just 4 levels. My fate is sealed. I'm not beating this game anytime soon, I immediately realize.
...
ten minutes later
My doom is confirmed by my friend, who informs me there are 20 ascensions. I've already poured in over 100 hours into the game. I'd love to say I'll burn out, but chances are better I'm gonna be clocking 2,000 hours...
|
|
|
Post by Friendly Person :) on Nov 30, 2019 21:53:53 GMT -5
I have absolutely no clue what game you're talking about
|
|
Derman
Oracle Knight
I still don't have a knife tag on my golden birth knife
Posts: 194
|
Post by Derman on Dec 1, 2019 11:05:35 GMT -5
Yeah family stuff can be awkward at times because of the expectation that you'll want to spend time with each other even when you don't like them. I'm cool with most of my siblings, but there are a couple I don't like hanging out with and I'd be happy if I saw them as little as possible (it's weird that I can say that... I sometimes forget that having 12 siblings isn't very common).
Slay the Spire, and reading that post I'm again tempted to give it a try.
Basically two things: inflexibility, and old codebase with only a couple of people who actually know what's going on.
Inflexibility is basically just the fact that we can't make many decisions without it going through some unknown entity elsewhere within the company, and some choices are completely out of our hands (like which OS to use for development, which alone is responsible for making my work 20% more time consuming), and we have to go with the company-wide standards. Overall it's a pain in the arse, but I'm fine with putting up with it as long as I'm getting paid for it.
The old codebase with almost no documentation is a bigger problem though. A lot of the old stuff is made by one of the two of our architects. So when I'm supposed to maintain it, I'm constantly trying to reach that one single guy (who has a habit of shutting everything out to work on something so he doesn't get distracted) so he could maybe explain what the hell is going on with his own file format he's using to pass around huge amounts of data. If he even remembers the thing I'm talking about. There's duplicate logic, unexplained magic values, convoluted ways of doing simple things, misleading names on functions and variables... The whole thing has been a painful process for me. My contribution to it was literally a 10-ish lines of code, but it took me almost three months (working a couple of days a week, to be fair) to wrap my head around everything and understand how to even start solving the problems. Doesn't feel very good working on a single small thing for so long and getting nothing done.
It's not really fair to say I'll run into them pretty much everywhere. New startups would be mostly free of both, and some bigger companies might be fine with proper documentation and processes. And like I said, even if some companies do have those problems, they might be on more tolerable levels. Our team/managers are making efforts to fix the issue with the poor maintainability of the code, which is nice. But to me, the root of the problem seems to be in the general lack of interest in developer culture towards making proper, maintainable code, documenting stuff that needs to be documented, and sticking to the processes that actually help keep track of what's going on, like code review sessions.
I can't really blame anyone, I'm bad at it as well. And not understanding everything is part of the reality of making products as part of a bigger team. It has just lead to some really frustrating experiences that have turned me off from working on any old parts of our codebase, that could've been prevented if the whole thing was managed a bit better from the start.
------------------------------------------------------------------------
In other news, I attended a cybersecurity hackathon this weekend with a student group. Basically a couple of vendors involved in the 5G standardisation (Nokia and Ericsson) set up their stuff for "world-class" hackers to try to get into.
A couple of thoughts:
1) Hacking stuff is surprisingly easy. While I don't have much experience, I have decent enough knowledge about TCP/IP and generally know enough about security, so once I found some tools I was able to get a lot of things done. We couldn't get to the cash prizes but we found a few minor vulnerabilities that were worth reporting, and had a lot of ideas that could've lead to some more severe ones if we had time to explore them more.
2) The thing you see in movies about hacking: Dark room with RGB lights, and Deus Ex-like music playing in the background, and a lot of coffee and energy drinks? That's exactly what it was like, even the background music. I'm not sure why the organizers thought that was the atmosphere to go for, maybe that's common in events like that.
3) While getting started can be easy, getting things done requires a lot of thinking. Since friday morning, I've slept roughly 5 hours, and those were filled with nightmares related to everything I've been doing. The hackathon is over, but I still find it hard to change focus to anything else. I hope can calm down at some point so I can get some sleep at night.
4) Overall, I learned a lot, and had fun. Even though the other guys had a bit more experience than me, I'm still surprised our team got accepted into the event considering the overall level of the competition. 99% of the people attending were all professionals who each individually had more knowledge and experience than our whole team combined.
But it was a great experience, and I'm glad I got to participate.
|
|
|
Post by Youngster Joey on Dec 1, 2019 12:13:51 GMT -5
Slay the Spire, and reading that post I'm again tempted to give it a try. Correct. It's officially replaced Civilization as my Achilles' heel. The problem with Civ is that games are long, so I know to not start. You die a lot in Slay the Spire, so in theory you could play a game for just ten minutes... it never turns out that way, though. I've never been attracted to slot machines, but I can see how it happens-- I did really well last round--so close! I'll just give it one more go..., I'm surprised you guys don't sidestep that problem with Docker? Most of my department uses Macs, but there are a handful of people who use their flavor of Linux and merrily go along their way. I get the pain, though; I'm kinda agnostic to which *nix system I use, but I hated developing on Windows. It makes more sense to allow people to use the OS they feel most productive in, as long as they don't contribute to the "but it works on my machine" problem (which Docker is supposed to address anyway). Oof. Yeah, I don't blame you for questioning whether you really want to do programming or not if you run into a situation like that. The code I was working with was PEP-8 compliant, thankfully, but similar situation of convoluted business logic and no documentation at all. I can confirm it feels pretty terrible to work on something for so long and have so little to show for it. Yeah, I think it's really going to vary from team to team, and it's something you have to vet for when you interview for jobs. Some teams are on top of clean codebases; others' codebases never suffer from code rot, because it was rotten from the moment it was written. I personally can't stand working with people who don't strive to make their code clean. The key is to never let people like your architect write crap code to begin with; it shouldn't pass code review at all. People rarely go back and clean up bad code, especially if it's obfuscated, so the only way to prevent the rot is to insist on writing it cleanly to begin with. Like you said, actually sticking to that requires a dedicated culture towards writing good code. I female dog about documentation and code cleanliness a lot on my current team. Sometimes I worry if I end up sounding like an obnoxious pedant, but I don't want to read, write, or work with ugly code. Luckily, our team's codebase is pretty nascent, and I have some sway on the team, so I can enforce quality standards... Yeah, that's an inevitable downside. Given enough time, any successful product will have swathes of the codebase you don't understand fully. It can all be well-written and yet still hard to comprehend, because there is only so much of a system you can understand. It's humbling, to say the least. That sounds pretty awesome. I've never attempted to hack anything, but I feel like it could be fun. What sort of vulnerabilities were you looking for?
|
|
Derman
Oracle Knight
I still don't have a knife tag on my golden birth knife
Posts: 194
|
Post by Derman on Dec 1, 2019 14:04:21 GMT -5
I'm surprised you guys don't sidestep that problem with Docker? Most of my department uses Macs, but there are a handful of people who use their flavor of Linux and merrily go along their way. I get the pain, though; I'm kinda agnostic to which *nix system I use, but I hated developing on Windows. It makes more sense to allow people to use the OS they feel most productive in, as long as they don't contribute to the "but it works on my machine" problem (which Docker is supposed to address anyway). Docker would, and does make things easier, when we can use it. The problem is that since I'm developing on Windows using WSL1 which technically means I get to develop on almost pure linux, with Windows just hanging around in the background. It adds some overhead to everything, so things are a bit slower sometimes, but overall it's better than pure Windows (also our product just doesn't function on windows). Also, Docker doesn't work on WSL1, at all. It's a known "feature", and it'd work on WSL2, which was released last summer. However, because of the mentioned inflexibility, our security team somewhere has to approve every windows update before they are allowed on our machines, and they are at least a year behind. Mostly we attempted to get into, and then mess around with one of the new routers they had. So figuring out the credentials to connect to that thing (which is surprisingly simple, especially since they gave us some very basic information about the "person" who set up the thing, so we can use that knowledge to decrypt the password), and then looking at the admin login interface and trying to find holes in it. Basically our goal was to try to get access to the configs in that router, so we could maybe open an SSH port and dump the whole firmware or something. I'm not sure how much more I should say since I did sign an NDA (which was a whopping one sentence long, telling me that disclosing the found vulnerabilities is on the vendors themselves), but while we didn't succeed in our initial goal (although neither did anyone else, the router was pretty well secured), we found some stuff we shouldn't have been able to access without proper credentials, and a couple of potential DoS attacks.
|
|
|
Post by Youngster Joey on Dec 1, 2019 21:35:53 GMT -5
Ew. You were developing on Windows? I'm sorry. Does everyone develop on Windows there? Odd choice of OS.
Windows is fine for regular bumbling about, but developing on it sucks since most technologies assume you're using a *nix system. Docker in particular does not play well...
That's pretty neat. Maybe I should try one sometime. Would be a good learning experience more than anything.
On a different note, Amazon's been crowing lately about how you can get things delivered in 1 day! I'm... kind of struggling to understand why this should be a big deal. My take on it is this: 99% of things I don't need right away, or even for several days. So 1 day vs. 2 really doesn't make a difference to me, because it wasn't like I was haunting the mailbox on the 2nd day for the package I ordered. I suppose sometimes I want or need things more quickly than that (rarely), but in that case, I probably need it the day of, not a day from now. In that case, 1-day shipping does me no good. I'd just as sooner go out and buy it locally. There's a point of diminishing returns with shipping speed, and going from 2 to 1 days just doesn't move the needle.
|
|
|
Post by Youngster Joey on Dec 4, 2019 21:05:33 GMT -5
Going to Chicago for a few days. Looking up things to do.
Chicago has a statue of shit. Literally of shit.
Art's subjective, I guess.
|
|
|
Post by Friendly Person :) on Dec 7, 2019 1:27:06 GMT -5
Art is subjective, but in this case doubles at literal.
I watched an old RLM episode where they talk about doing the 48 hour film project. Recalling some of Derman's hackathon/game-jams, it makes me almost sad that writing is such a solitary occupation. The closest thing we have to that is NaNoWrMo, where-in you try to write an entire novel in the month of November.
It's very dumb.
On the other hand, as fun as a 48 hour creative session sounds, I believe all the comments about the stress. It's been ages since I've purposely pulled an all-nighter, because all it took was two or three times to realise how much they suck. Furthermore, I become a terrible person on no sleep. Imagine all my rants, but stripped of any kind of reasoning, double the emotion, and triple the negativity. I've also never once stayed up two nights in a row. I imagine I would be either homicidal or suicidal, and I'm not sure if that's even hyperbole. Either way, I'm pretty sure some kind of violence would be involved.
So in the end I guess it's a good thing that I'm not qualified for any 48 hour creative events. Maybe it's a sign that writing is truly the best fit for me after all.
|
|
Derman
Oracle Knight
I still don't have a knife tag on my golden birth knife
Posts: 194
|
Post by Derman on Dec 9, 2019 13:05:09 GMT -5
To be honest, I'm a bit disappointed by how...crappy that statue is. I was expecting something a lot bigger and more impressive.
Also, related to the 1 day shipping, I was going to complain about our shipping times (doesn't help we had a postal service strike for the past few weeks) because I've had a package on it's way for two weeks now. But it's almost 21:00 and they just rang my doorbell to deliver the package. Didn't know they delivered stuff so late, but I'm not complaining.
|
|
|
Post by Youngster Joey on Dec 9, 2019 14:31:36 GMT -5
Bahhhhhhhh it is SO hard reviewing other people's work.
me: "you should change this to ABCXYZ" [ they change it to ABXZ ]
It's... better, but still not what I meant.
I used to be that person who would rewrite other people's work in group projects, because I'd get frustrated by how they didn't write well and didn't seem to fully "get" my suggestions. It's baffling because to me, the writing is stilted/awkward or code is messy/ugly, but other people don't really seem to notice??
It's also frustrating because the other senior people on my team will just hit the green checkbox for approval. Am I just being too much of a pedant? I think that frustrates me more. I don't mind reviewing other people's work, but it's a little weird/bothersome that I'm the only person who seems to care.
|
|
|
Post by Youngster Joey on Dec 9, 2019 20:19:12 GMT -5
Is it possible to have a close opposite sex friendship? Being friends with women has never really been my thing, so I sort of have a vested interest in having platonic friendships with men. I don't have many friends, but so far, my track record of the other party developing feelings over the years has been like... 100%, minus my gay friend? Five for five? It kind of sucks, since I have lost friends after turning them down.
|
|
|
Post by Friendly Person :) on Dec 9, 2019 22:37:45 GMT -5
Beats me. In terms of female friends I have approximately 0. At this point I might have trouble differentiating 'friendship' with 'blossoming relationship' mostly because I've just never had a close female friend (or any female friend, aside from like, elementary school). Then again, I might also be so skeptical of my own inexperience that I'd adamantly refuse to let my thoughts go down that road too far. Clearly though, I'm the odd-man out. I imagine for most normal people it's possible. Then again, that's predicated on that most dangerous of statements, "normal" people.
Super helpful post, am I right?
|
|
Derman
Oracle Knight
I still don't have a knife tag on my golden birth knife
Posts: 194
|
Post by Derman on Dec 10, 2019 15:47:20 GMT -5
I'm about as useless as grain on that topic. I have no female friends to speak of right now. I'd imagine it wouldn't be impossible. I know a few people who have close friends of the opposite sex. But there's a possibility they experience the same problems, and I just don't know about it.
On the code review thing: Sometimes it's hard to understand what others mean with their suggestions when it comes to the code logic itself. The one who wrote the code and the one reviewing it think about it very differently, so you are not always on the same page about everything. When it comes to style stuff it shouldn't be that hard, it rarely has anything to do with the code itself. Clean is clean, ugly is ugly. You can argue about some details but it shouldn't be that hard to understand what the other person means. Design patterns are a mixed bag, because breaking the logic down into proper parts and then organizing it so that it makes sense is a skill not many developers are good at. So I don't blame when people have hard time figuring it out even when given clear feedback.
Being lazy with what you merge in is a big no-no for me. S**t code will make somebody's work a lot harder later, when it'd take a few hours to review and fix it before it's going in.
I personally don't mind when people just rewrite my stuff rather than taking their time trying to explain it. I've had a couple of instances where people make a commit to clean some of my stuff up, but usually it's just a code snippet in the comment, which I could just copy-paste in. There's a possibility I'll have to start extending our stuff with Rust, and aside from one of our senior devs, nobody in the team knows anything about it. So when it comes to reviewing and maintaining it, there's probably not many people being involved.
|
|