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
Search - "expect/reality"
-
Navy story time, and this one is lengthy.
As a Lieutenant Jr. I served for a year on a large (>100m) ship, with the duties of assistant navigation officer, and of course, unofficial computer guy. When I first entered the ship (carrying my trusty laptop), I had to wait for 2 hours at the officer's wardroom... where I noticed an ethernet plug. After 15 minutes of waiting, I got bored. Like, really bored. What on TCP/IP could possibly go wrong?
So, scanning the network it is. Besides the usual security holes I came to expect in ""military secure networks"" (Windows XP SP2 unpatched and Windows 2003 Servers, also unpatched) I came along a variety of interesting computers with interesting things... that I cannot name. The aggressive scan also crashed the SMB service on the server causing no end of cute reactions, until I restarted it remotely.
But me and my big mouth... I actually talked about it with the ship's CO and the electronics officer, and promptly got the unofficial duty of computer guy, aka helldesk, technical support and I-try-to-explain-you-that-it-is-impossible-given-my-resources guy. I seriously think that this was their punishment for me messing around. At one time I received a call, that a certain PC was disconnected. I repeatedly told them to look if the ethernet cable was on. "Yes, of course it's on, I am not an idiot." (yea, right)
So I went to that room, 4 decks down and 3 sections aft. Just to push in the half-popped out ethernet jack. I would swear it was on purpose, but reality showed me I was wrong, oh so dead wrong.
For the full year of my commission, I kept pestering the CO to assign me with an assistant to teach them, and to give approval for some serious upgrades, patching and documenting. No good.
I set up some little things to get them interested, like some NMEA relays and installed navigation software on certain computers, re-enabled the server's webmail and patched the server itself, tried to clean the malware (aka. Sisyphus' rock), and tried to enforce a security policy. I also tried to convince the CO to install a document management system, to his utter horror and refusal (he was the hard copy type, as were most officers in the ship). I gave up on almost all besides the assistant thing, because I knew that once I left, everything would go to the high-entropy status of carrying papers around, but the CO kept telling me that would be unnecessary.
"You'll always be our man, you'll fix it (sic)".
What could go wrong?
I got my transfer with 1 week's notice. Panic struck. The CO was... well, he was less shocked than I expected, but still shocked (I learned later that he knew beforehand, but decided not to tell anybody anything). So came the most rediculous request of all:
To put down, within 1 A4 sheet, and in simple instructions, the things one had to do in order to fulfil the duties of the computer guy.
I. SHIT. YOU. NOT.
My answer:
"What I can do is write: 'Please read the following:', followed by the list of books one must read in order to get some introductory understanding of network and server management, with most accompanying skills."
I was so glad I got out of that hellhole.6 -
sad but reality
tiktokers create cring content and earn lots of money.
open source contributors create technology which is maintaining world but earn far less.
how can we expect bright future?30 -
I hate all of these rants about JavaScript being a terrible language.
In reality, it's one of the easiest languages to work with. This makes it easier for new programmers to write messy code, but is it the language's fault?
People get mad about the things that happen when you multiply "undefined" and a string...what do you expect?
You also have the freedom to choose from a variety of tools the community has created to solve existing problems. People just don't realize that they don't *have* to learn everything, you just learn as you need them.
Don't blame JavaScript for you bad programming, terrible type conversion needs, and great tooling.23 -
Manager: "We can't have new releases breaking older versions of the mobile app!!!!! We'll lose all our customers!!!!"
fullStackChris: "That's fine, we can do API versioning, but it will take some time to implement, I'll have to be quite careful and write some tests to implement it. Probably 2-3 weeks..."
Manager: "NO WAY, THAT TIME ESTIMATE IS WAY TOO LONG, WE DON'T HAVE TIME FOR THAT!!!"
fullStackChris: "So how do you wanna support multiple versions of the app without doing any sort of versioning?"
Manager: "...we'll think of something!"
Dev: "..."
And with 99% certainty, I expect to hear this in a week or two:
Manager: "fullStackChris, we'd like to introduce you to the highly technical concept, API versioning. It's a way to version the API so we can support multiple versions of the application our customers use! It's amazing! Please implement this immediately so we can support multiple versions of the application!"
Sigh... each day managers learn a bit more how physical reality works... you can't have your cake and eat it too.7 -
This rant is particularly directed at web designers, front-end developers. If you match that, please do take a few minutes to read it, and read it once again.
Web 2.0. It's something that I hate. Particularly because the directive amongst webdesigners seems to be "client has plenty of resources anyway, and if they don't, they'll buy more anyway". I'd like to debunk that with an analogy that I've been thinking about for a while.
I've got one server in my home, with 8GB of RAM, 4 cores and ~4TB of storage. On it I'm running Proxmox, which is currently using about 4GB of RAM for about a dozen VM's and LXC containers. The VM's take the most RAM by far, while the LXC's are just glorified chroots (which nonetheless I find very intriguing due to their ability to run unprivileged). Average LXC takes just 60MB RAM, the amount for an init, the shell and the service(s) running in this LXC. Just like a chroot, but better.
On that host I expect to be able to run about 20-30 guests at this rate. On 4 cores and 8GB RAM. More extensive migration to LXC will improve this number over time. However, I'd like to go further. Once I've been able to build a Linux which was just a kernel and busybox, backed by the musl C library. The thing consumed only 13MB of RAM, which was a VM with its whole 13MB of RAM consumption being dedicated entirely to the kernel. I could probably optimize it further with modularization, but at the time I didn't due to its experimental nature. On a chroot, the kernel of the host is used, meaning that said setup in a chroot would border near the kB's of RAM consumption. The busybox shell would be its most important RAM consumer, which is negligible.
I don't want to settle with 20-30 VM's. I want to settle with hundreds or even thousands of LXC's on 8GB of RAM, as I've seen first-hand with my own builds that it's possible. That's something that's very important in webdesign. Browsers aren't all that different. More often than not, your website will share its resources with about 50-100 other tabs, because users forget to close their old tabs, are power users, looking things up on Stack Overflow, or whatever. Therefore that 8GB of RAM now reduces itself to about 80MB only. And then you've got modern web browsers which allocate their own process for each tab (at a certain amount, it seems to be limited at about 20-30 processes, but still).. and all of its memory required to render yours is duplicated into your designated 80MB. Let's say that 10MB is available for the website at most. This is a very liberal amount for a webserver to deal with per request, so let's stick with that, although in reality it'd probably be less.
10MB, the available RAM for the website you're trying to show. Of course, the total RAM of the user is comparatively huge, but your own chunk is much smaller than that. Optimization is key. Does your website really need that amount? In third-world countries where the internet bandwidth is still in the order of kB/s, 10MB is *very* liberal. Back in 2014 when I got into technology and webdesign, there was this rule of thumb that 7 seconds is usually when visitors click away. That'd translate into.. let's say, 10kB/s for third-world countries? 7 seconds makes that 70kB of available network bandwidth.
Web 2.0, taking 30+ seconds to load a web page, even on a broadband connection? Totally ridiculous. Make your website as fast as it can be, after all you're playing along with 50-100 other tabs. The faster, the better. The more lightweight, the better. If at all possible, please pursue this goal and make the Web a better place. Efficiency matters.9 -
It's my end of probation and I just got demoted, from originally "Senior dev" to "dev".
My manager found it a bit difficult to tell me but funny enough, I am completely fine with it apart from the little dent on my pay check. Let me talk about the bad first: money. I believe I have been on the lower end of the market pay range anyways so this step-back gives me about 5% cut, which is acceptable and fair enough.
And the good? Quite a bit. When I got this job offer 6 months ago, it was when everything literally went to shit. I was upset with a somehow not so smart but stubborn tech lead and I desperately wanted to quit. Then I got the offer, which even after 2 interviews I still didn't recall it was a job ads for "technical lead". The manager thought I was not there yet but wanted to keep me as a senior dev. Then, this pandemic almost took away this job. My manager brought my case to the CEO and convinced him to keep me, by saying a lot of good things about me (which I think might not be true for the tech side...)
Throughout the whole 6 months I have been working remotely from home. WFH is not new to me, just this time it's very challenging as I was starting a new job. I have been struggling to keep my pace. All people in the team are nice. However if I don't reach out, no one would notice I need help. And with zero knowledge for this job, I got stuck with "I don't know what I don't know". This ranges from company culture, practice, new tech.. everything. So, that's how this 6 months feels long, but also short.
In our review meeting I think my manager finally realise this. Otherwise he would have gone for the "terminate employment" option. Taking away the "senior" title also takes away the expectation of "I should know XYZ", which I don't. I told him I am kinda happy with it because this sets me up for a more comfortable position to catch my breathe. He told me he noticed my improvement along the way. I told him yes I have been putting in efforts but just given the situation it's not as quick as anyone would expect. We're on the same page now.
So compared to my previous job, I got paid less. But in return, I get many more opportunities to expose myself to new tech. I get a good team who are respectful and open-minded. This is exactly what I was looking for and the drive for me to quit my previous job.
Not to mention I got a reality check. This is also an indicator for me starting to become an imposter, which is the thing I despise most in the industry. I don't want people to value me for how many years I have got in my career. I want to prove myself by what I am capable of. If I'm not there, I should and will get there.
And the last thing which I'm not very keen but it's 100% worth mentioning, is that my manager said I should aim for taking the "senior" role back. He said the salary raise is waiting when I get there. But... Let me just take my time.4 -
I finally heard a retarded question on a job interview. I thought they were just jokes.. I was wrong!
What kind of a question is "how would your friends describe you?"..
They'd say I'm fucking awesome, did you expect a different answer?
Or when I gave them a referral, my previous boss, and they asked me what would he say about me.. well fuck me sideways, I have no idea.
And one of the last ones, "tell us your three top qualities that would make us hire you". What kind of information does such a question even give them? Are they testing me how well I can lie? Because I can't, and others that can lie will give a better answer, regardless of the reality.
And they were even taking notes after these questions.
Other than that, nice company. I really want to start working there soon.5 -
My friend has a saying that helps me keep focused and reality checked:
"Move Forward, Stay Flexible, Expect Resistance."
Say it to yourself often.
To all the devs out there fighting the fight, keep this in mind and push forward. One of the things I love about our industry is the wealth of information we share and the support we get from our mentors and each other.
Some of the jokes aren’t bad either.1 -
A friend of mine asked me yesterday for help for his bachelor thesis.
He wants to write about MySQL internals in regards to BLOB storage / usage.
We had a veeeerrrry long discussion....
And found a loooot of scary internet pages.
It's so .... Insane....
What some people with doctor titles or higher education generate...
Isn't content. More poo...
Most "blogs" / "articles" or whatever the author named it were missing all kinds of relevant data (version, configuration, anything relevant) but full of opinionated / biased bullshit.
Highlights were:
- we store lot of BLOB data, Backups take long and require more space
(you store additional data in an database, whaddya expect???!!!!)
- interesting guesswork about locking without any reference (interesting since it was sometimes so far away from reality that it looked more like quantum physics)
- storing blobs means that _each_ blob entry will be stored in a separate file (without any reference, but if an RDBMs did that... It would end in an amazing fireball I guess)
- BLOB's bad since it can represent only the file content, the database cannot distinguish wether it's an MP3 / MPG or anything like that...
(Ehm. Yeah. And an database cannot distinguish if you store under "Name" an Name or gibberish?!)
I somehow think that some people made an doctor and post this gibberish nonsense so people stay dumb to give them a job...
Like the TV repair men who steals the batteries from the remote.
Even conspiracy theories were more convincing -
How the fuck does that retard Zuckerberg manage to spend this much money on his metaverse and hardly have anything to show for? What are the developers actually working on? I mean, if you had that many people working that long on something you'd expect at least a product that looked all right, even if no one wanted to use it?!
I bet you could put a team of 20 top shelf developers, designers, QA and project managers together and give them 2 years to build almost anything we see today. A facebook clone, a Twitter clone, some sort of virtual reality look-at-my-perfect-but-empty-life-click-to-like piece of social shit-verse.. What the hell are they spending their time on?!!8 -
Quite a few years ago (late 90s, early 00s maybe) I remember watching a TV show where they demonstrated what virtual reality might be like. It was all rough polygons, no lighting or texturing etc.
I'd heard about the Oculus Rift and considered trying it. I get motion sickness sometimes from certain 3D games (Deus Ex, Portal, sometimes even Minecraft) so was hesitant. Last week, decided to just get one and see how it went.
Didn't expect it to be as good as it is - compared to what was envisaged ~20 years ago. No motion sickness. Not only was the graphics detail amazing but the responsiveness is insane. In another 20 years time what will there be?
Anyway on dev topic: Now it makes me want to play with a 3D/VR engine. Considering Unreal Engine but not really sure where to start learning. Maybe a book? Though reviews tend to say they go out of date quick, I do prefer a physical book for learning tech stuff.1 -
The source engine is interesting, because it has reached that stage of life where it's old enough to be remarkable-- in the sense that it could be called 'legacy', a sort of milestone in development practices and thinking, both in software, and design.
That said, a better look at it might be from the lense of *uses today*.
A lot of former source engine (SE) devs are now going to unity or unreal, I don't blame them.
But it's interesting to examine examples of games that haven't.
One such game is the freeware "No More Room In Hell". A couple online play throughs shows a wealth of well designed maps (and an even greater horde of shovelware maps, but hey, you take the good with the bad).
The age of the engine itself shows. Even in games like Left 4 Dead the engine's age can be seen. This, in some respects has been a drag, but also a blessing. Where other games could rely on their effects, shaders, and other tech, modders, map makers, and designers have had to rely on wit and creativity.
Enter "situated environments."
In an age where many people desire to travel, to go places, and have grown up doing the exact OPPOSITE, there is a great desire for variety of locations in games: not merely 'environmental' in the shallow sense of a 'theme' such as 'lava', 'tundra', etc. But in the sense of setting in general.
We want places that are both out of reach and yet familiar. Fire-fights happen in city streets. Apocalypses happen in neighborhoods where the skyline is both broken and at once something we know by sight. Open air markets, grocery stores, neighborhoods, all of these provide the back drops of popular games and series such as COD, Battlefield, The Last of Us, and yes, the example game, NMRIH.
I call this idea of 'familiar but out-of-reach level design', "situated environments", because familiarity with them, but *lack of real life experience* with them, on a day to day basis, allows people's expectations to fill in the gaps.
No one for example would argue the layouts of 7 Days To Die are familiar, but most of us don't spend all day in a junkyard or a high rise hotel.
So they *feel* familiar. Likewise with Skyrim, the villages and towns, both iconic and strange, our expectations formed by cultural inheritance, hollywood films, television shows, stories, childrens books, and yes, other games.
In a way, familiarity-without-real-in-person-experience is a shortcut for designers, one that lets them play with the player's head-space, the players subconscious idea of how a space and setting *should* work, what to *expect* out of the area, how to *operate* within the area. And the more it conforms to expectations, the more surprising an overdesigned element appears to be, rather than immersion breaking. A real life example of this is people's idea of chernobyl. When they discover the amusement park and ferris wheel they're blown away by the juxtaposition of the wasteland that surrounds them and the associations ('nostalgia' as it were) that such a carnival ride carries for many of us. It simultaneously *doesn't belong* and is yet all at once *perfectly situated in the environment*.
It is to say 'surreal', which is adjacent to the idea of *being real*, in terms of our "perception of what is and isn't plausible, if not possible."
This is at the heart of suspension of disbelief, because in essence, virtual worlds are a lie, like fiction, and good fiction violates expectations in order to tell us truths about reality. As part of our ability to differentiate bullshit from reality, there is to say an element in our bullshit detectors (doubtless evolved over many 10's of thousands of years), that is designed to not merely detect what is absurd in our limited experience, but to incorporate absurdity into everyday experience. In that sense part of our rationality is the acceptance of irrational experiences, learning from it, and discovering 'a proper place for each thing' in the "models of the world" we all carry around in our heads. Eventually we normalize the absurd, it becomes the new reality, and what remains unassimilated becomes superstition (real or otherwise), a figment, or an anomaly.
One of the best examples I've encountered is The Last of Us: Left Behind, a good chunk of which is spent in a mall. And they nailed the environment perfectly I would say.
Or for those who don't own a PS4, a more accessible example is a map in NMRIH aptly called "the museum", and few words better do it justice than to go play it yourself--that is, if you really want to know what I mean by a 'situated environment'.
What better way, during this pandemic, to get out of the news cycle and into your own head? Sometimes the best way to escape isn't outside, it's within.3 -
Some gamers: *Gaming sucks now*
Also, those gamers: *Plays only FPS games*
Like dude, there are so many genres with amazing games that you would have a new game to play every day if you wanted. But oh no, I only play COD and Fortnite and because they suck, every other game in existence must also suck.
Stop playing the same damn games then, maybe you will enjoy gaming once more.
Also, I feel like people complain about FPS games because they expect to win every single match, which is impossible. You will meet sweats and tryhards. That's the reality of any multiplayer game.5 -
proxying youtube
today I thought writing a quick project, a youtube proxy server, as in, you browse localhost:<PORT> and youtube comes in the response.
this is not rocket science as proxy servers have around for a long time.
I thought it'd be interesting to code it in userland, as opposed to "systemland".
And 50 lines of code and some minor hurdles later I see youtube "running" in localhost.
Although youtube didn't just work as usual since the videos don't actually come from youtube.com, but from googlevideo.com instead. And my browser, expectably, enforces CORS and forbids any requests to it.
At that point I started to think of ways to somehow proxy googlevideo.com too. But the solutions are not at all trivial.
Then I thought what was the payoff of all this. I tried to proxy serve youtube out of curiosity, and sure thing, you can do it.
But what problem would proxying youtube solve? Maybe I should think in a fuller way what are the problems I have with youtube.
One issue I have is the exposure, discoverability. To explain it, let's say I have been watching a very, very big amount of videos as of today.
Personally I would expect youtube to understand very well by now what my tastes are, what do I want to watch and what I do NOT want to watch.
Notice that I am very black and white, and I do not have much interest in watching certain types of videos.
It could be true that if my expectations of how youtube should work became reality then youtube recommendations would become polarizing or echo chambering.
But that is my decision though, and the problem with youtube is that it's seemingly forcing a single recommendations algorithm onto everyone.
Some people are more open minded and want to watch EVERYTHING, and a lot of people don't.
But users aren't deciding what they should get recommended. Youtube is making that decision for them. And it sure feels like it's trying to maximize ad revenue.
I for one don't give two flying fucks about pranks or diva youtubers. Yet youtube is adamant in presenting some of these to me.
Now, trying to come up with a solution for this is really non trivial. It would definitely require some youtube mining, or some kind of network so as to not get rate limited when mining, and even then you still have to think of how a good recommendation system would work.
I think the implementation of all that would be too much for me (time and skill wise). But I think it's fun to at least try to outline how recommendations could work.
I would very much prefer that when youtube recommended something, at least it has some number of confidence meaning how much would I like that video, so at least I know what to expect.
It should also have some indicators like what is the mood of the video. As in, sometimes I watch youtube in the mood of learning, like programming videos, but most of the time I watch to get entertained.
These ideas are just brainstorms and could be terrible on reproduction, but I'd like to hear what ideas can some of the people here can come up with.2 -
This world really hands you jack all. And everytime it's going well it smack you down just for good measure. What people say is mostly meaningless. "Oh I stand for this and that", yeah I saw that when you did the exact opposite while fucking me over like im not worthy of being treated like a human
Hey, at least it's a nice serving of reality for a naive fool like me. "Never expect anything nice from anyone": Noted3 -
Updates occasionally do more harm than good.
In 2019, people got massively ripped off by a Google Chrome Android update.
They removed two essential features: First, the ability to deactivate pull-to-refresh. When I scrolled up and accidentally refreshed a page, I thought "Didn't I disable this s**t? No big deal, let's go to chrome://flags and… oh wait, where is it? Oh no, they wouldn't remove such an important thing, would they?".
Second, they got rid of the list view for tabs, which showed both page title and URL. Grid view only shows the title, there is only half the space for each title due to two tabs per row (four in horizontal view), and there are fewer items at once on screen.
This significantly damaged my trust in updates. Whenever I update, I expect everything that worked before to still work. The sad reality is that each update brings the risk of something being broken or taken away.
Image source: https://media.askvg.com/articles/... (what they removed)14 -
Reading https://en.wikipedia.org/wiki/... and this quote struck me as quite poignant:
On two occasions I have been asked, "Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out?" ... I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a question.
— Charles Babbage, Passages from the Life of a Philosopher[5]
Basically realised this is 90% of my clients.
A colleague and I were musing about how warped ones understanding of fundamental reality must be to expect this, but then I realised that actually, their understanding is actually far more sophisticated than ours! Here we are boxed into our pissant Euclidean physics, and what they are looking for in software is the equivalent of a Tenet Turnstile, capable of reversing entropy to make sense out of their garbage data!
Incredible! Now that I understand their ingenius vision, I will get to work on the trivial task of writing the 'Algorithm' and packaging this in .NET application (because to those who cannot actually DO, ideas are everything and execution is nothing 🙄).
Once I do I'm honestly not sure if I'm going to use that to make sense of their data or just get in touch with Sator1 -
Dependability is a fundamental more modest than common expertise for bosses
New managers a significant part of the time feel that since they have been raised to the heap up they ought to know everything immediately. Truly, it anticipates that adventure should gain capacity with the association styles and approaches that turn out to be cruel for your social affair. Being flexible and being open to the bewildering will assist you with changing into a useful manager. A Roman scientist named NURS FPX 4000 Assessment 4 Analyzing a Current Health Care Problem or Issue Seneca is credited with saying, "Karma slants toward the coordinated." And while karma can earnestly play a consider life, all that verifiably pivots around orchestrating yourself for when incredible karma comes your bearing. Excellent affiliations do this by orchestrating themselves for an entrance through status and planning.
Plan for disappointment and goofs - it's really clever to expect them a lot early so you can lessen the effect. A SWOT assessment (Qualities, Shortcomings, Anticipated open doorways and Risks) is an important instrument for this. The more you plan for a social event the more useful it will be. Approach saves time by lessening blunders, forestalling re-work and shortening works out. And it in addition decreases pressure, which is overall something that would justify being thankful for! Other than being a NURS FPX 4010 Assessment 1 Collaboration and Leadership Reflection Video State financed School English educator, Kine is in this way the head of Ryan Search & Directing and facilitates Held Supervisor Pursue, Help and Drive New turn of events. His clients range different undertakings from Headway to Monetary Associations.
Whether an overwhelming event, network prosperity break or stock association disrupting impact, astounding occasions can emerge whenever. Being available to the unexpected assists you with finding sure results and make depend with your partners. One strategy for doing this is to remain mindful of vulnerability, where you proceed with like the circumstance is both customary and novel. This assists you with expanding your NURS FPX 4010 Assessment 3 Interdisciplinary Plan Proposal data affirmation and seek after the most ideal choice. ClickUp's Business Development Plan Configuration is an incredible contraption for planning the normal and the unforeseen!
Dependability is an essential limited scope ability for bosses to make. Supervisors should be ready to have authentic two-way discussions with specialists and should endeavor to get themselves when they are concealing reality or lying. Fair correspondences among supervisors and representatives can assist with fostering a positive work environment culture and can expect a fundamental part in the connection's prospering. While giving investigation, supervisors ought to convey NURS FPX 4020 Assessment 1 Enhancing Quality and Safety both the positive and negative parts of a representative's show. They ought to in addition have the decision to give obliging assessment and backing workers when essential. This correspondence style is as frequently as conceivable implied as moderate candor.
MORE
Instagram is a powerful tool for businesses
The best digital marketing agencies
Instagram is an amazing asset for businesses