Details
-
Aboutlike to randomly include meme references in the code
-
SkillsEverything JS as beyond; Some Python; Teeny tiny bit of PHP; A bit of C++; Bullied by CSS;
-
Github
Joined devRant on 8/17/2016
Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
-
I don't have a Computer Science (CS) degree, but I do know a lot of Computer Shit. Major Computer Shit. So yeah, I guess I major in CS after all.2
-
me: I will major in CS so I can work with computers, not people
narrator: But little did he know...4 -
I was telling a coworker about the shit hole known as San Fransisco. I don't say this lightly because it was a great place to visit when I was a child in the 80s. Some of the best memories in my life as a kid. Riding the trolleys was amazing. Watching the street performers was really really fun. Seeing the Golden Gate was awesome too.
Sadly, this is rapidly disappearing. The powers that be are allowing drug addicts to use anytime anyplace. They are giving them free food. People are shitting on sidewalks and dropping half eaten sandwiches on the sidewalk. So you will find half eaten sandwiches and poop next to each other. They have had to pay people 6 figures to clean this shit up.
As I was telling my coworker about this I said you will find poop and half eaten sandwiches on the sidewalk. Then I said: "old sandwich, new sandwich". He was unsure if he should laugh or puke.3 -
Over the course of a few months, I began to suspect my manager disliked me on a personal level. I decided to be proactive and invited him to a meeting on "Improving our working relationship" - he showed up 5 minutes late and fired me.11
-
Rule number 1 in performances debug :
It's always I/O.
If it's not IO, then the code should be REALLY bad.12 -
My tech lead keeps assigning me incident tickets in the company's worst legacy app because I solved some bug in it a while ago. I'm the only one who gets assigned these.
If this keeps going, I know for sure that I will be regarded as the designated developer for this application. Then I will be truly fucked.5 -
Almost 800MB of dependencies just to download the damn npm, sometimes I wonder if some part of the software developement world is going crazy7
-
My little daughter came to me all excited, saying "Daddy! Daddy! Guess how old I'll be in June!"
"Oh I don't know princess, why don't you tell me?" I said. She gave me a huge smile and held up four fingers.
It's now three hours later, police have joined in and she still won't say where she got them.7 -
The Manager kept masturbating over "low hanging fruit".
The apples on the bottom of The Product have all been picked.
The apples at the top are starting to rot.
The Manager masturbated a bit more over the low hanging fruit.
The bottom of The Product is now so slippery with Manager Cum that the brave engineers can't reach the top anymore.
Time to bring my axe to work.13 -
Do NOT "compress" your code by leaving out braces in control structures and putting the 300 char statement on the same fucking line as the control structure!
Yes, your code file becomes vertically shorter than the usual 3000 lines, BUT my brain tumor proportionally grows larger.7 -
num = float ("input a number:")
if num>0:
print ("it is a positive number")
else num=0:
print ("it is zero")
else:
print ("it is a negative number")1 -
So apparantly at the company i work at someone was able to use the remote monitoring a comptetitor set up for their automation stuff they had on the same site as we did. Apparantly they use just as shitty passwords as we do and rely on the network being secured enough by the IT guys. And since our stuff is in the same network as theirs. Well...2
-
!rant I finished crocheting the capelet I was working on. Not too bad for a first attempt, I think!22
-
typescript, I HATE you!
ME: Trying to extend Subject and override Subject.subscribe(PartialObserver<T>)
ME: export class MySubject<T> extends Subject<T> {
subscribe(obs?:PartialObserver<T>): Subscription {
return super.subscribe(obs);
}
}
ME: compile
TS: Compilation error! No such method to override!
ME: load the app -- ERROR
ME: recompile
TS: Compilation error! No such method to override!
ME: load the app -- works perfectly
:confusedjackie:
Make up your mind! So is that class compileable or not???
If not -- how the fuck does it work then???
If yes -- why the fuck do you yell in my face with all those errors???8 -
Like "Why is Facebook webpage running so slow" (I think cuz of all the tracking stuff, and they are having trouble on my Linux machine). But I gave it a naive duck-duck and found this brilliant tip to "Reinstall JavaScript" to improve that performance. I'm just so speechless rn... And the cherry on the ice-cream is the link :Drant reinstall js wtf-anyway? like what? guys... facebook is evil i dont want to use it i use arch btw java is also an island12
-
Everyone and their dog is making a game, so why can't I?
1. open world (check)
2. taking inspiration from metro and fallout (check)
3. on a map roughly the size of the u.s. (check)
So I thought what I'd do is pretend to be one of those deaf mutes. While also pretending to be a programmer. Sometimes you make believe
so hard that it comes true apparently.
For the main map I thought I'd automate laying down the base map before hand tweaking it. It's been a bit of a slog. Roughly 1 pixel per mile. (okay, 1973 by 1067). The u.s. is 3.1 million miles, this would work out to 2.1 million miles instead. Eh.
Wrote the script to filter out all the ocean pixels, based on the elevation map, and output the difference. Still had to edit around the shoreline but it sped things up a lot. Just attached the elevation map, because the actual one is an ugly cluster of death magenta to represent the ocean.
Consequence of filtering is, the shoreline is messy and not entirely representative of the u.s.
The preprocessing step also added a lot of in-land 'lakes' that don't exist in some areas, like death valley. Already expected that.
But the plus side is I now have map layers for both elevation and ecology biomes. Aligning them close enough so that the heightmap wasn't displaced, and didn't cut off the shoreline in the ecology layer (at export), was a royal pain, and as super finicky. But thankfully thats done.
Next step is to go through the ecology map, copy each key color, and write down the biome id, courtesy of the 2017 ecoregions project.
From there, I write down the primary landscape features (water, plants, trees, terrain roughness, etc), anything easy to convey.
Main thing I'm interested in is tree types, because those, as tiles, convey a lot more information about the hex terrain than anything else.
Once the biomes are marked, and the tree types are written, the next step is to assign a tile to each tree type, and each density level of mountains (flat, hills, mountains, snowcapped peaks, etc).
The reference ids, colors, and numbers on the map will simplify the process.
After that, I'll write an exporter with python, and dump to csv or another format.
Next steps are laying out the instances in the level editor, that'll act as the tiles in question.
Theres a few naive approaches:
Spawn all the relevant instances at startup, and load the corresponding tiles.
Or setup chunks of instances, enough to cover the camera, and a buffer surrounding the camera. As the camera moves, reconfigure the instances to match the streamed in tile data.
Instances here make sense, because if theres any simulation going on (and I'd like there to be), they can detect in event code, when they are in the invisible buffer around the camera but not yet visible, and be activated by the camera, or deactive themselves after leaving the camera and buffer's area.
The alternative is to let a global controller stream the data in, as a series of tile IDs, corresponding to the various tile sprites, and code global interaction like tile picking into a single event, which seems unwieldy and not at all manageable. I can see it turning into a giant switch case already.
So instances it is.
Actually, if I do 16^2 pixel chunks, it only works out to 124x68 chunks in all. A few thousand, mostly inactive chunks is pretty trivial, and simplifies spawning and serializing/deserializing.
All of this doesn't account for
* putting lakes back in that aren't present
* lots of islands and parts of shores that would typically have bays and parts that jut out, need reworked.
* great lakes need refinement and corrections
* elevation key map too blocky. Need a higher resolution one while reducing color count
This can be solved by introducing some noise into the elevations, varying say, within one standard div.
* mountains will still require refinement to individual state geography. Thats for later on
* shoreline is too smooth, and needs to be less straight-line and less blocky. less corners.
* rivers need added, not just large ones but smaller ones too
* available tree assets need to be matched, as best and fully as possible, to types of trees represented in biome data, so that even if I don't have an exact match, I can still place *something* thats native or looks close enough to what you would expect in a given biome.
Ponderosa pines vs white pines for example.
This also doesn't account for 1. major and minor roads, 2. artificial and natural attractions, 3. other major features people in any given state are familiar with. 4. named places, 5. infrastructure, 6. cities and buildings and towns.
Also I'm pretty sure I cut off part of florida.
Woops, sorry everglades.
Guess I'll just make it a death-zone from nuclear fallout.
Take that gators!5 -
I was skimming a FedEx page to track a shipment when out of the corner of my eye I see “Watch list” and almost had a merry little panic attack because I apparently did not get the requisite amount of sleep for rational thought.
FedEx, our ideas of watch list are very different.17 -
Dude
The client has a giant database with all credit and debit cards
ALL INFOS IN FUCKING PLAINTEXT
THE CARD NUMBER
THE CVV
THE EXPIRY DATE
I'M SHAKING AF38