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 - "level design"
-
//
// devRant unofficial UWP update (v2.0.0-beta)
//
After several concepts, about 11 months of development (keep in mind that I released 20 updates for v1 in the meantime, so it wasn't a continous 11 months long development process) and a short closed beta phase, v2 is now available for everyone (as public beta)! :)
I tried to improve the app in every aspect, from finally responsive and good looking UI on Desktop version to backend performance improvements, which means that I almost coded it from scratch.
There are also of course a few new features (like "go to bottom" in rants), and more to come.
It's a very huge update, and unfortunately to move forward, improve the UI (add Fluent Design) and make it at the same level of new UWP apps, I was forced to drop the supported for these old Windows 10 builds:
- Threshold 1 (10240)
- Threshold 2 (10586)
Too many incompatiblity issues with the new UI, and for 1 person with a lot of other commitments outside this project (made for free, just for passion), it's impossible to work at 3 parallel versions of the same app.
I already done something like that during these 11 months (every single of the 20 updates for v1 needed to be implemented a second time for v2).
During the closed beta tests, thanks to the awesome testers who helped me way too much than I ever wished, I found out that there are already incompatiblity issues with Anniversary Update, which means that I will support two versions:
1) One for Creators Update and newer builds.
2) One for Anniversary Update (same features, but missing Fluent Design since it doesn't work on that OS version, and almost completly rewritten XAML styles).
For this reason v2 public beta is out now for Creators Update (and newer) as regular update, and will be out in a near future (can't say when) also for the Anniversary Update.
The users with older OS versions (problem which on PC could be solved in 1-2 days, just download updates) can download only the v1.5.9 (which probably won't be supported with new updates anymore, except for particular critcal bug fixes).
So if you have Windows 10 on PC and want to use v2 today, just be sure you have Creators Update or Fall Creators Update.
If you have Windows 10 PC with Anniversary Update, update it, or if you don't want to do that, wait a few weeks/months for the update with support for your build.
If you have an older version on PC, update it, or enjoy v1.5.9.
If you have Windows 10 Mobile Anniversary Update, update it (if it's possible for your device), or just wait a few weeks/months for the update with support for your build.
If you have Windows 10 Mobile, and because of Microsoft stupid policy, you can't update to Anniversary Update, enjoy v1.5.9, or try the "unofficial" method (registry hack) to update to a newer build.
I hope it's enough clear why not everyone can receive the update today, or at all. :P
Now I would like to thank a few people who made this possible.
As always, @dfox who is always available for help me with API implementations.
@thmnmlist, who helped me a lot during this period with really great UI suggestions (just check out his twitter, it's a really good person, friend, designer and artist: https://twitter.com/thmnmlist).
And of course everyone of the closed beta testers, that reported bugs and precious suggestions (some of them already implemented, others will arrive soon).
The order is random:
@Raamakrishnan
@Telescuffle
@Qaldim
@thmnmlist
@nikola1402
@aayusharyan
@cozyplanes
@Vivaed
@Byte
@RTRMS
@tylerleonhardt
@Seshpengiun
@MEGADROID
@nottoobright
Changelog of v2.0.0-beta:
- New UI with Fluent Design and huge improvements for Desktop;
- Added native support for Fall Creators Update (Build 16299);
- Changed minimum supported version to Creators Update (Build 15063), support for Anniversary Update (Build 14393) will arrive soon;
- Added mouse support for Pull-To-Refresh;
- Added ability to change your username and email;
- Added ability to filter (by 'Day', 'Week', 'Month' and 'All') the top Rants;
- Added ability to open rant links in-app;
- Added ability to zoom GIFs (just tap on them in the Rant View);
- Added 'go to bottom' button in the Rant View (if more than 3 comments);
- Added new theme ('Total Black');
- ...complete changelog in-app and on my website (can't post it here because of the 5000 characters limit)...
What will arrive in future updates:
- 'Active Discussions' screen so you can easily find rants that have recent comments/discussions;
- Support for 'Collabs';
- Push Notifications (it was postponed and announced too many times...);
- More themes and themes options;
- and more...
If you still didn't download devRant unofficial UWP, do it now: https://microsoft.com/store/apps/...
If you find some bugs or you have feature suggestion, post it on the Issue Tracker on GitHub (thanks in advance for your help!): https://github.com/JakubSteplowski/...
I hope you will enjoy it! ;)52 -
In a user-interface design meeting over a regulatory compliance implementation:
User: “We’ll need to input a city.”
Dev: “Should we validate that city against the state, zip code, and country?”
User: “You are going to make me enter all that data? Ugh…then make it a drop-down. I select the city and the state, zip code auto-fill. I don’t want to make a mistake typing any of that data in.”
Me: “I don’t think a drop-down of every city in the US is feasible.”
Manage: “Why? There cannot be that many. Drop-down is fine. What about the button? We have a few icons to choose from…”
Me: “Uh..yea…there are thousands of cities in the US. Way too much data to for anyone to realistically scroll through”
Dev: “They won’t have to scroll, I’ll filter the list when they start typing.”
Me: “That’s not really the issue and if they are typing the city anyway, just let them type it in.”
User: “What if I mistype Ch1cago? We could inadvertently be out of compliance. The system should never open the company up for federal lawsuits”
Me: “If we’re hiring individuals responsible for legal compliance who can’t spell Chicago, we should be sued by the federal government. We should validate the data the best we can, but it is ultimately your department’s responsibility for data accuracy.”
Manager: “Now now…it’s all our responsibility. What is wrong with a few thousand item drop-down?”
Me: “Um, memory, network bandwidth, database storage, who maintains this list of cities? A lot of time and resources could be saved by simply paying attention.”
Manager: “Memory? Well, memory is cheap. If the workstation needs more memory, we’ll add more”
Dev: “Creating a drop-down is easy and selecting thousands of rows from the database should be fast enough. If the selection is slow, I’ll put it in a thread.”
DBA: “Table won’t be that big and won’t take up much disk space. We’ll need to setup stored procedures, and data import jobs from somewhere to maintain the data. New cities, name changes, ect. ”
Manager: “And if the network starts becoming too slow, we’ll have the Networking dept. open up the valves.”
Me: “Am I the only one seeing all the moving parts we’re introducing just to keep someone from misspelling ‘Chicago’? I’ll admit I’m wrong or maybe I’m not looking at the problem correctly. The point of redesigning the compliance system is to make it simpler, not more complex.”
Manager: “I’m missing the point to why we’re still talking about this. Decision has been made. Drop-down of all cities in the US. Moving on to the button’s icon ..”
Me: “Where is the list of cities going to come from?”
<few seconds of silence>
Dev: “Post office I guess.”
Me: “You guess?…OK…Who is going to manage this list of cities? The manager responsible for regulations?”
User: “Thousands of cities? Oh no …no one is our area has time for that. The system should do it”
Me: “OK, the system. That falls on the DBA. Are you going to be responsible for keeping the data accurate? What is going to audit the cities to make sure the names are properly named and associated with the correct state?”
DBA: “Uh..I don’t know…um…I can set up a job to run every night”
Me: “A job to do what? Validate the data against what?”
Manager: “Do you have a point? No one said it would be easy and all of those details can be answered later.”
Me: “Almost done, and this should be easy. How many cities do we currently have to maintain compliance?”
User: “Maybe 4 or 5. Not many. Regulations are mostly on a state level.”
Me: “When was the last time we created a new city compliance?”
User: “Maybe, 8 years ago. It was before I started.”
Me: “So we’re creating all this complexity for data that, realistically, probably won’t ever change?”
User: “Oh crap, you’re right. What the hell was I thinking…Scratch the drop-down idea. I doubt we’re have a new city regulation anytime soon and how hard is it to type in a city?”
Manager: “OK, are we done wasting everyone’s time on this? No drop-down of cities...next …Let’s get back to the button’s icon …”
Simplicity 1, complexity 0.16 -
You know what's the difference between
- static page written purely in HTML with inline styling
and
- dynamic page generated in PHP, that actually loads data from MySQL database and is correctly styled in separate CSS document
on national level exam necessary to earn a title of technician?
ONE HACKING PERCENT!
Ok, backstory. So, few days ago I got results from that exam. To be honest, it was very, very easy so I wasn't worried at all, unlike some of my classmates who just don't understand programming at all (you need at least 75% to pass). Our task was to create database, write website in PHP that shows contents of that database and use CSS to give it a look that of example web page and run it on XAMPP. I've got result of 96% and while I was wandering what I've done wrong i hear my colleague almost screaming with joy "I passed! And I haven't even touched PHP. I was soooo sure I'll fail." So I asked him what's his result and he says 95%. And then another colleague said he got 95% without PHP. So, in other words what I thought to be the main task was worth 1%. Apparently, what was more important was for the page to look identical to the example, so I guess some examiners didn't even look into the source. And don't get me wrong, I don't wish my classmates had failed. That's not why I'm ranting. But why in the name of Ada Lovelace the task said to use PHP and all that if it weren't supposed to check our knowledge of programming in PHP? Sometimes I think the people who design these tests don't even know what they're doing.10 -
Although I love developing I always thought that there was something missing.
I learned Java but didn't really like it. I had spent quite some time with web development and enjoyed it but I felt like developing with JavaScript was too high level and I felt the same for Python.
So I started learning the most awesome programming language: C
I just love that I have so much control over everything and that the language is so compact and gives you just the right amount of tools you need.
I also love physics and electronics a lot and it feels awesome to first build something and then program it.
I am looking forward to design a PCB (printed circuit board) and write code for an AVR microcontroller like the Atmega328 (most arduinos use this one).
Picture of the project I am working on.10 -
I recently joined the dark side - an agile consulting company (why and how is a long story). The first client I was assigned to was an international bank. The client wanted a web portal, that was at its core, just a massive web form for their users to perform data entry.
My company pitched and won the project even though they didn't have a single developer on their bench. The entire project team (including myself) was fast tracked through interviews and hired very rapidly so that they could staff the project (a fact I found out months later).
Although I had ~8 years of systems programming experience, my entire web development experience amounted to 12 weeks (a part time web dev course) just before I got hired.
I introduce to you, my team ...
Scrum Master. 12 years experience on paper.
Rote memorised the agile manifesto and scrum textbooks. He constantly went “We should do X instead of (practical thing) Y, because X is the agile way.” Easily pressured by the client to include ridiculous (real time chat in a form filling webpage), and sometimes near impossible features (undo at the keystroke level). He would just nag at the devs until someone mumbled ‘yes' just so that he would stfu and go away.
UX Designer. 3 years experience on paper ... as business analyst.
Zero professional experience in UX. Can’t use design tools like AI / photoshop. All he has is 10 weeks of UX bootcamp and a massive chip on his shoulder. The client wanted a web form, he designed a monstrosity that included several custom components that just HAD to be put in, because UX. When we asked for clarification the reply was a usually condescending “you guys don’t understand UX, just do <insert unhandled edge case>, this is intended."
Developer - PHD in his first job.
Invents programming puzzles to solve where there are none. The user story asked for a upload file button. He implemented a queue system that made use of custom metadata to detect file extensions, file size, and other attributes, so that he could determine which file to synchronously upload first.
Developer - Bootlicker. 5 years experience on paper.
He tried to ingratiate himself with the management from day 1. He also writes code I would fire interns and fail students for. His very first PR corrupted the database. The most recent one didn’t even compile.
Developer - Millennial fratboy with a business degree. 8 years experience on paper.
His entire knowledge of programming amounted to a single data structures class he took on Coursera. Claims that’s all he needs. His PRs was a single 4000+ line files, of which 3500+ failed the linter, had numerous bugs / console warnings / compile warnings, and implemented 60% of functionality requested in the user story. Also forget about getting his attention whenever one of the pretty secretaries walked by. He would leap out of his seat and waltz off to flirt.
Developer - Brooding loner. 6 years experience on paper.
His code works. It runs, in exponential time. Simply ignores you when you attempt to ask.
Developer - Agile fullstack developer extraordinaire. 8 years experience on paper.
Insists on doing the absolute minimum required in the user story, because more would be a waste. Does not believe in thinking ahead for edge conditions because it isn’t in the story. Every single PR is a hack around existing code. Sometimes he hacks a hack that was initially hacked by him. No one understands the components he maintains.
Developer - Team lead. 10 years of programming experience on paper.
Writes spaghetti code with if/else blocks nested 6 levels deep. When asked "how does this work ?”, the answer “I don’t know the details, but hey it works!”. Assigned as the team lead as he had the most experience on paper. Tries organise technical discussions during which he speaks absolute gibberish that either make no sense, or are complete misunderstandings of how our system actually works.
The last 2 guys are actually highly regarded by my company and are several pay grades above me. The rest were hired because my company was desperate to staff the project.
There are a 3 more guys I didn’t mention. The 4 of us literally carried the project. The codebase is ugly as hell because the others merge in each others crap. We have no unit tests, and It’s near impossible to start because of the quality of the code. But this junk works, and was deployed to production. Today is it actually hailed as a success story.
All these 3 guys have quit. 2 of them quit without a job. 1 found a new and better gig.
I’m still here because I need the money. There’s a tsunami of trash code waiting to fail in production, and I’m the only one left holding the fort.
Why am I surrounded by morons?
Why are these retards paid more than me?
Why are they so proud when all they produce is trash?
How on earth are they still hired?
And yeah, FML.8 -
Okay i'm done - YOU FUCKING ANDROID STUDIO MORONS. Being at a high level in C++, I tried to do some android coding. THERE ARE FUCKING NO GOOD TUTORIALS, NO GOOD DOCS, HECK, THE SELF GENERATED CODE OF THE IDE IS WRONG: WHAT THE FUCK IS GOING ON YOU FUCKING MORONS?
oh wait, let me first import android.widgets.rant;
or was it android.widgets.devrant.rant; or was it android.dr.rant.RantManager;?
Oh wait, I know lets search the docs?
OH WAIT THE DOCUMENTATION DOESNT HAVE THAT.
NOW HOW ABOUT I JUST TRY THE EXAMPLE CODE? WELL UH-UH! YOU HAVE TO FIND OUT YOURSELF WHAT TO IMPORT IN ORDER FOR IT TO WORK. ALSO, WHAT FUCKING UP WITH THAT PERMISSION SYSTEM? ITS SO BADLY DOCUMENTED!!!
Oh wait, I'm sure that I have to change something in this file... or was it that other file?
GOD
how dare they have style and design guidelines?
MORONS!
I will resort to implement my app idea in godot, idc anymore... I don't want to burn out because I used the "official high standard" tech.
it definitely isn't high standard and definitely not good. Thank you morons@google
THANK YOU FOR NOTHING
A FRAMEWORK WHERE I NEED 2 DAYS TO FIGURE OUT TO ADD EVENT LISTENERS TO MY THINGS IS DEFINITELY NOT ONE I'D LIKE TO USE.
also, whats up with
AudioRecord (int audioSource, int samplerateInHz, int channelConfig, int audioFormat, int bufferSizeInBytes);
ARE WE BACK IN THE C ERA? CAN'T YOU BE BOTHERED TO IMPLEMENT SOME SIMPLE FUCKING ENUMS????
WHATS THE POINT OF AN OOP LANGUAGE IF YOU ARE GOING TO USE IT LIKE C?
Oh wait I found a tutorial ... First trigger: "java scripts". Second trigger: this guy LITTERALLY ONLY TEACHES YOU HOW TO PLACE WIDGETS ON THE CANVAS. THANKS FOR NOTHING SHERLOCK!
Oh btw: did you know that android studio gives the best error messages?
"Error: illegal start of expression"
NO ERROR MESSAGE - NOTHING!
YOU BETTER USE THE IDE OR YOU GO HOME YOU FUCKER!!!
Oh and btw: if you want to read the best documentation - the code itself YOU GOTTA AGREE TO OR TERMS OF SERVICE!!!! WE DONT WANT ANYBODY TO BECOME SUCCESSFUL WITHOUT US KNOWING!!!!!
THANK YOU GOOGLE FOR NOTHING!
YOU FUCKERS!
thanks godot for *atleast* existing. You are the... last pick i'd pick, but :shrug:, I have experienced android studio now.
If anybody has any advice on what to use instead, please go ahead. And you better not tell me how good you are at android studio. I DONT CARE ABOUT WHAT YOU CAN IMPLEMENT IN ANDROID STUDIO. I JUST WANT SOMETHING THAT IS USABLE WITHOUT HAVING TO BE EXTRA CAREFUL WHEN DOING *ANYTHING*!!!!
fuckers.48 -
Just met my two friend dev and jay after a long time. After some initial random conversation.
Dev: What is your job profile?
Jay (excitedly): I design electronic circuits and write some low-level programs for them.
D: So you are a low-level programmer?
J: Yeah.
D: My cousin is also a programmer. But, I think he is smarter than you.
J (confused and thinking that he must be a good programmer): Oh great! It would be nice to meet him. But, why do you think he is smarter?
D: Although still in school, he is a high-level programmer.
J: -_-"4 -
UPDATE: devRant Trans-Oceanic Journey Community Project
It was a mere 12 days ago that I asked the question; 'Could devRanters, as a community, build a 21st Century Technology-Laden ‘devRant devie-Stressball-in-a-Bottle’ and send it on a journey across the Atlantic ocean?
I am thrilled to report that devRanters enthusiastically accepted this difficult challenge. A core team quickly formed and a tremendous amount of research and progress has been made in a short period of time. I want to give you a high level-flavor of what we are doing. Please keep in mind we still need your help. We welcome all develops to take part in this journey.
I want to give appreciation to the devRant Founders @dfox and @trogus. Without your support and sponsorship this project would not have been possible. devRant brought us together and it a reality. Devie journeying across the Ocean the Columbus sailed will stir the imagination of children and adults worldwide when we launch on May 1, 2017.
Some of the research and action items in progress:
- Slack and trello environments were created to capture research and foster discussion.
- A Stony Brook University Oceanography Professor suggested the Gulf Stream would be a good pathway across the ocean. We researched it very and agree. The Gulf Stream has been a trans-Atlantic conduit for hundreds of years. We are deciding whether to launch from Cape Hatteras, NC or the Virginia coast. Both have easy access to the rapid currents in the Gulf Stream.
- We are researching every detail of the Gulf Stream to make the journey easier and faster for devie. We have maps and a team member gathered valuable ideas reading a thorough book – ‘The Gulf Stream’.
- We decided on using a highly resilient plastic rather than glass for the bottle material. Plastic is much lighter, faster and glass breaks down more easily. The lightweight enclosure will allow us to take full advantage of waves and ample trade winds. We are still discussing the final design as we want to minimize friction and mimic the non-locomotion fish that migrate thousands of miles riding the Gulf Stream.
-The enclosure might be 3D printed unless we can locate a commercial solution. We have 3D specs and are speaking with some experts. There are advantages and dis-advantages to each solution.
- We will be using Iridiums' RockBLOCK two-way satellite technology to bounce lat-long coordinate pings off their 36 low-orbit satellites. The data will be analyzed by our devRant devie analysis software. IOS and Android public apps being built by the team will display devie's location throughout the journey in.
- Arduino will be used as the brains
- Multiple sensors including temperature and depth are being considered
-A project plan will be published to the team Friday 12/9. Sorry I am a few days late but adding some new ideas.
There are still a lot of challenges we must overcome and we will.
That’s all for now. I will send updates and all ideas / comments are valued.6 -
it's funny, how doing something for ages but technically kinda the wrong way, makes you hate that thing with a fucking passion.
In my case I am talking about documentation.
At my study, it was required to write documentation for every project, which is actually quite logical. But, although I am find with some documentation/project and architecture design, they went to the fucking limit with this shit.
Just an example of what we had to write every time again (YES FOR EVERY MOTHERFUCKING PROJECT) and how many pages it would approximately cost (of custom content, yes we all had templates):
Phase 1 - Application design (before doing any programming at all):
- PvA (general plan for how to do the project, from who was participating to the way of reporting to your clients and so on - pages: 7-10.
- Functional design, well, the application design in an understandeable way. We were also required to design interfaces. (Yes, I am a backender, can only grasp the basics of GIMP and don't care about doing frontend) - pages: 20-30.
- Technical design (including DB scheme, class diagrams and so fucking on), it explains it mostly I think so - pages: 20-40.
Phase 2 - 'Writing' the application
- Well, writing the application of course.
- Test Plan (so yeah no actual fucking cases yet, just how you fucking plan to test it, what tools you need and so on. Needed? Yes. but not as redicilous as this) - pages: 7-10.
- Test cases: as many functions (read, every button click etc is a 'function') as you have - pages: one excel sheet, usually at least about 20 test cases.
Phase 3 - Application Implementation
- Implementation plan, describes what resources will be needed and so on (yes, I actually had to write down 'keyboard' a few times, like what the actual motherfucking fuck) - pages: 7-10.
- Acceptation test plan, (the plan and the actual tests so two files of which one is an excel/libreoffice calc file) - pages: 7-10.
- Implementation evalutation, well, an evaluation. Usually about 7-10 FUCKING pages long as well (!?!?!?!)
Phase 4 - Maintaining/managing of the application
- Management/maintainence document - well, every FUCKING rule. Usually 10-20 pages.
- SLA (Service Level Agreement) - 20-30 pages.
- Content Management Plan - explains itself, same as above so 20-30 pages (yes, what the fuck).
- Archiving Document, aka, how are you going to archive shit. - pages: 10-15.
I am still can't grasp why they were surprised that students lost all motivation after realizing they'd have to spend about 1-2 weeks BEFORE being allowed to write a single line of code!
Calculation (which takes the worst case scenario aka the most pages possible mostly) comes to about 230 pages. Keep in mind that some pages will be screenshots etc as well but a lot are full-text.
Yes, I understand that documentation is needed but in the way we had to do it, sorry but that's just not how you motivate students to work for their study!
Hell, students who wrote the entire project in one night which worked perfectly with even easter eggs and so on sometimes even got bad grades BECAUSE THEIR DOCUMENTATION WASN'T GOOD ENOUGH.
For comparison, at my last internship I had to write documentation for the REST API I was writing. Three pages, providing enough for the person who had to, to work with it! YES THREE PAGES FOR THE WHOLE MOTHERFUCKING PROJECT.
This is why I FUCKING HATE the word 'documentation'.36 -
Sometimes.....
When I want to escape how dull/repetitive/boring the world of web development is. I crack open a nice lil terminal, dust off my gcc/g++ compilers and fuck around in C or C++ till my eyes start to bleed.
I have been fucking around with systems development. Mainly with Linux programming. I have also started to get deeper on game engine design and compiler design....because low level development is where its at.
A man can only fuck around rest apis, css and html and the endless sea of Javascript and other dynamic languages for so long before going crazy.
Eventually.....I would want to code something impressive enough to give me a spot somewhere as a C or C++ developer. I just can't work with web development any longer man. It really is not what I want to do, the fact that I do it(and that I am good at it) is circumstantial more than because I really enjoy it. I really don't12 -
I had been a "hobby" programmer for well over a decade, with my primary career being in repair or a "technician". I had taught myself dozens of languages because it was fun, but never really accomplished much.
I was laid off from my job as a technician and I found myself listless and without purpose. I started doing development again on random things to pass the time and I ended up volunteering as a developer for a game I had played for years.
At the same time I had an uncle who encouraged me to consider software as a career. These two things gave me the confidence to apply for a local software job I saw on Indeed.
They called me pretty quickly, and I was brutally honest. "No, I don't have a degree. I'm self-taught. I have no professional experience really."
I got a proficiency exam anyway and I took it - apparently doing well enough on it that the CTO called me a week later. We had a long talk and I finally asked him why he called me.
He told me that while a degree means something, the passion to learn this job means more to him. It was a month before I was offered the position, and I graciously accepted it.
We had a call about my compensation before starting. It was rather low, but we both agreed that my skill level was quite an unknown.
A year later and my pay was bumped up a sizable amount. My skills are defined now and growing rapidly as new challenges are sent my way. I went from a naive hobbyist to a professional in a short period of time.
I realized that I was always a professional. I had a desire to learn and a desire to do things the right way. I may not have known what to call things. I didn't know some of the design patterns I had used over the years were standards that had names and meaning.
I basically work two jobs now. My full-time job and also on the game that helped propel my career forward and gave me the confidence to reach for it.
As for my hobby? I turned to electronics and the maker community. It's a nice marriage with my programming skill set, and I never knew how rewarding a blinking LED would be. :)4 -
Most satisfying bug I've fixed?
Fixed a n+1 issue with a web service retrieving price information. I initially wrote the service, but it was taken over by a couple of 'world class' monday-morning-quarterbacks.
The "Worst code I've ever seen" ... "I can't believe this crap compiles" types that never met anyone else's code that was any good.
After a few months (yes months) and heavy refactoring, the service still returned price information for a product. Pass the service a list of product numbers, service returns the price, availability, etc, that was it.
After a very proud and boisterous deployment, over the next couple of days the service seemed to get slower and slower. DBAs started to complain that the service was causing unusually high wait times, locks, and CPU spikes causing problems for other applications. The usual finger pointing began which ended up with "If PaperTrail had written the service 'correctly' the first time, we wouldn't be in this mess."
Only mattered that I initially wrote the service and no one seemed to care about the two geniuses that took months changing the code.
The dev manager was able to justify a complete re-write of the service using 'proper development methodologies' including budgeting devs, DBAs, server resources, etc..etc. with a projected year+ completion date.
My 'BS Meter' goes off, so I open up the code, maybe 5 minutes...tada...found it. The corresponding stored procedure accepts a list of product numbers and a price type (1=Retail, 2=Dealer, and so on). If you pass 0, the stored procedure returns all the prices.
Code basically looked like this..
public List<Prices> GetPrices(List<Product> products, int priceTypeId)
{
foreach (var item in products)
{
List<int> productIdsParameter = new List<int>();
productIdsParameter.Add(item.ProductID);
List<Price> prices = dataProvider.GetPrices(productIdsParameter, 0);
foreach (var price in prices)
{
if (price.PriceTypeID == priceTypeId)
{
prices = dataProvider.GetPrices(productIdsParameter, price.PriceTypeID);
return prices;
}
* Omitting the other 'WTF?' code to handle the zero price type
}
}
}
I removed the double stored procedure call, updated the method signature to only accept the list of product numbers (which it was before the 'major refactor'), deployed the service to dev (the issue was reproducible in our dev environment) and had the DBA monitor.
The two devs and the manager are grumbling and mocking the changes (they never looked, they assumed I wrote some threading monstrosity) then the DBA walks up..
DBA: "We're good. You hit the database pretty hard and the CPU never moved. Execution plans, locks, all good to go."
<dba starts to walk away>
DevMgr: "No fucking way! Putting that code in a thread wouldn't have fix it"
Me: "Um, I didn't use threads"
Dev1: "You had to. There was no way you made that code run faster without threads"
Dev2: "It runs fine in dev, but there is no way that level of threading will work in production with thousands of requests. I've got unit tests that prove our design is perfect."
Me: "I looked at what the code was doing and removed what it shouldn't be doing. That's it."
DBA: "If the database is happy with the changes, I'm happy. Good job. Get that service deployed tomorrow and lets move on"
Me: "You'll remove the recommendation for a complete re-write of the service?"
DevMgr: "Hell no! The re-write moves forward. This, whatever you did, changes nothing."
DBA: "Hell yes it does!! I've got too much on my plate already to play babysitter with you assholes. I'm done and no one on my team will waste any more time on this. Am I clear?"
Seeing the dev manager face turn red and the other two devs look completely dumbfounded was the most satisfying bug I've fixed.5 -
Been reviewing ALOT of client code and supplier’s lately. I just want to sit in the corner and cry.
Somewhere along the line the education system has failed a generation of software engineers.
I am an embedded c programmer, so I’m pretty low level but I have worked up and down and across the abstractions in the industry. The high level guys I think don’t make these same mistakes due to the stuff they learn in CS courses regarding OOD.. in reference how to properly architect software in a modular way.
I think it may be that too often the embedded software is written by EEs and not CEs, and due to their curriculum they lack good software architecture design.
Too often I will see huge functions with large blocks of copy pasted code with only difference being a variable name. All stuff that can be turned into tables and iterated thru so the function can be less than 20 lines long in the end which is like a 200% improvement when the function started out as 2000 lines because they decided to hard code everything and not let the code and processor do what it’s good at.
Arguments of performance are moot at this point, I’m well aware of constraints and this is not one of them that is affected.
The problem I have is the trying to take their code in and understand what’s its trying todo, and todo that you must scan up and down HUGE sections of the code, even 10k+ of line in one file because their design was not to even use multiple files!
Does their code function yes .. does it work? Yes.. the problem is readability, maintainability. Completely non existent.
I see it soo often I almost begin to second guess my self and think .. am I the crazy one here? No. And it’s not their fault, it’s the education system. They weren’t taught it so they think this is just what programmers do.. hugely mundane copy paste of words and change a little things here and there and done. NO actual software engineers architecture systems and write code in a way so they do it in the most laziest, way possible. Not how these folks do it.. it’s like all they know are if statements and switch statements and everything else is unneeded.. fuck structures and shit just hard code it all... explicitly write everything let’s not be smart about anything.
I know I’ve said it before but with covid and winning so much more buisness did to competition going under I never got around to doing my YouTube channel and web series of how I believe software should be taught across the board.. it’s more than just syntax it’s a way of thinking.. a specific way of architecting any software embedded or high level.
Anyway rant off had to get that off my chest, literally want to sit in the corner and cry this weekend at the horrible code I’m reviewing and it just constantly keeps happening. Over and over and over. The more people I bring on or acquire projects it’s like fuck me wtf is this shit!!! Take some pride in the code you write!16 -
I'm leaving my job.
That had already been decided when I learned that the only other front end guy at the company put in his two weeks notice. I immediately decided that I was morally obligated to put in my 4 months notice to give the company enough time to find a replacement (because, contrary to the beliefs of some programmers, front end plays a critical role in web dev).
With only 2 weeks left, I was put on his project to do some "simple design work".
Jesus christ in heaven alive and dead...
I've never in my career seen CSS with such an intense level of specificity -- nobody on that team should have ever let that code get so out of control.
I've spent the past week cursing, walking out of the room, whispering "I can't believe you've done this", ranting to non-developer friends.
Here's an example: the application has a panel used all over the place with a header and a body. Every Single View has it's own duplicated panel, each with its own unique class names and CSS. And that's just one element.
Every view has hundreds of lines of duplicated CSS. Every button, link, list, all with unique styles.
To any junior developer reading this, please hear me: Write one block of CSS for any element that will be reused. DO NOT duplicate your code when it can be used over and over.
/rant4 -
I'm really close to just quitting coding all together. This job is sucking the life out of me. I've lost my interest in code and the idea that there are better jobs out there.
My "boss" who's not even really my boss but behaves like he is, is micromanaging my every tag, and is an information hog. He doesn't document, he doesn't tell me anything, I've been here six months and still don't know half of what I need to know to do my job properly!
I'm expected to implement a new responsive design, but we don't have design specifications.
Cool, you'd think, new ideas, complete overhaul! Let's get a good foundation in bootstrap going!
WRONG! It needs to fit in with the old, fuck- ugly pre 2000 design.
Not because of any design constraints in particular, but because HE wants it that way. You know what was fucking trendy in 2000? Tables. Tables fucking everywhere. YOU KNOW WHAT TABLES ARE NOT? RESPONSIVE YOU FUCKING ICE LOLLY CHEWER!
We have no development timeline, no process management, no fucking project management. THE FUCKING PASSWORDS WERE STILL STORED IN PLAIN TEXT UNTIL LAST MONTH YOU IRRESPONSIBLE BANANA DEEPTHROATER! 😤😤😤😤😤😤
I'm doing my best here to get something resembling the old page, but there needs to be some fucking compromise! We are in fucking 2017, let's work with Bootstrap instead of against it, how about that you fucking bald cactus!
I know enough about UI to know that the way we're going, this is just going to be another unusable fucking clusterfuck.
YOU KNOW THE BEST FUCKING PART? I'M A FUCKING BACKEND DEV AND I WAS HIRED AS SUCH! GIVE ME A DESIGN TEMPLATE AND I'LL DO MY BEST TO IMPLEMENT IT, BUT FUCK YOU FOR EXPECTING FRONT END LEVEL DESIGN KNOWLEDGE YOU DUMB FUCKING SPAGHETTI!14 -
(I am an entry-inter-intermediate level dev)
P = Person
P:Hey Can you build me a POS system for free?
Me: Yea whatever. (because... immediate family member)
P:Ok Great.
Me: *starts working on it.. almost done with inventory control and layouts in one night*
P: When will it be done? and I need it in a full screen window not a browser!!
Me: Soon..and I have not worked in ASP yet. So it will be a full screen browser app.
P: Aww you cant do it fast? You are not skilled enough??? Poor you, you are not good enough. I can do it in a few hours. Just write a C program which stores entries in a txt file. I dont want sql shes-que-el on my system. You dont want to use .txt because it will be harder for you. Poor you.. no skill.
Me: *raging to a level where i turn into kryptonium and burn superman to death but still keeping my calm* You will get it when you get it. Period
Inner Me: GO FUCK YOURSELF. IM DOING THIS FOR FREE SO THAT IT HELPS YOU OUT. NAGGING ME WONT HELP YOUR CAUSE ONE BIT. GO FUCKING LEARN HOW TO CODE YOURSELF AND MAKE IT YOURSELF OR BUY IT FOR A FUCK TON OF UNJUSTIFIED MONEY. IM GIVING YOU A BEAUTIFUL LAYOUT, GREAT APPLICATION ARCHITECTURE USING LARAVEL AND GREAT DATABASE DESIGN WHICH WOULD BE SCALABLE AND PRODUCE MEANINGFUL REPORTS. WHY THE FUCK WOULD YOU PREFER A .TXT FILE OVER A WELL DESIGNED DATABASE. WOULD YOU FUCKING OPEN THAT HAMSTER CAGE OF A BRAIN OF YOURS WITH A KNIFE OR A SCREWDRIVER?
IF ITS THAT EASY FOR YOU GO FUCKING DO IT YOURSELF AND STOP BOTHERING ME. I AM TAKING MY TIME OUT FROM FREELANCING TO HELP YOU OUT. I COULD BE SPENDING THIS TIME ON OTHER PROJECTS WHICH WOULD GET ME SOMEWHERE. THE ONLY FUCKING REASON IM DOING IT BECAUSE I MIGHT BE ABLE TO RESELL THE POS (PIECE OF SHIT) TO OTHER PEOPLE IN FUTURE AND MAKE MY SHARE OF UNJUSTIFIED SHIT TON OF MONEY.14 -
Project Cortana: Day 56
*What I liked*
Here is the rant where I described the project: https://devrant.io/rants/962190
Time for a review. The biggest advantage I have found was the productivity. Let me explain:
1. Cortana: It's useful as fuck if anyone is willing to use it all the time. It really helps to get reminders and notifications everywhere (PC, Laptop and Mobile).
2. Microsoft Launcher: An underrated gem due to the hate towards M$. Thanks to it's transparent theme, it looks absolutely gorgeous. The most useful part is the "Feed" where you get all your emails, recently edited documents, recently used apps or contacts all together. I was quite surprised to see the level of customization if offered considering it's M$.
3. M$ Office: I probably don't need to talk much about it, it's the most productive tool you can get. Outlook is fucking brilliant on mobile. Other office apps, while they are great on mobile, are probably more useful in tablets. And the "Focused Inbox" is the best thing happened to outlook.
4. M$ To-Do: Holy fuck, this is sick. I know that there is many alternative with more features. But this app is the perfect example of a todo app. Simple, has the exact right features and has a really smooth, beautiful UI. This really helped me to be productive.
5. OneDrive: Didn't find much difference compared to Google Drive.
6. People: Something that I discovered later and found it really useful. You can pin contacts in the taskbar and see emails, calender items associated with that contact in one click. Found it really useful considering I was chatting with my Supervisor and lectures quite frequently.
7. Windows Mail App: While I really like it, I have mixed feeling about it. I would really love to have HTML signature. Not sure why M$ is not implementing it. But the "Share" in the Context Menu is really useful while sending attachements.
Finally, the "Fluid Design" so far is beautiful. Loving the effects.
I will write what I didn't like in the next rant.14 -
In college we were assigned to groups for a semester long project. One of the guys in my group made it abundantly clear that he had been programming far longer than the rest of us and that this project was beneath him. On the other hand, at my school the program for graphic design and development shared many core classes that required programming knowledge. It was common to encounter students who had no experience at all even in intermediate level courses. Fast forward to the end of the semester right before finals. We are working on this project together and one of my team members accidentally creates a directory in the wrong folder(graphic design student). So the experienced guy, who had become convinced that we were only slowing him down, tells him to just type "rm -rf /". Everything on this poor kids whole hard drive...gone. Design projects due the next week all deleted. He ended up having to retake a few of the courses simply because that dude was a dick.4
-
The freelancer...
We are looking for someone to design a logo with no less than 2 years Javascript, 10 years Intel IO low level engineering in assembly, 2 months pascal, 14 weeks of HTML5, 17.23567 years of ASCII C, and you must have a half pint of strawberry ice cream in your freezer. $20.00 firm.5 -
Today on forgotten games – Ballance.
The game is absolutely outstanding. Graphics is absolutely amazing even though the game was developed in 2004. The sound effects are perfect, I can literally feel the wooden ball rolling on steel rails. The background music is also amazing, we're talking Alexander Brandon level here.
The game is about rolling the ball through the levels trying not to fall off. There are three balls: the stone one, the wooden one and the paper one, different in weight, velocity and momentum.
I admire the clever level design. It uses in-game map features in multi-purpose way, for example some levels use ball transformers (the things that transform the ball from one kind to another) as a trap for your ball to lose momentum. It even seems like that levels were designed by some crazy modders for advanced players, but they weren't, and traveling through them feels like you're a pro gamer playing custom levels.
Even though levels seem simple at first glance, they allow non-linear gameplay and different gaming styles.
The gameplay itself is pure meditation. But even though the concept seem straightforward – just follow the level and don't fall – it's not. You have to use all three ball types: there are air vents to fly above upon, which only paper ball can do, there are obstacles to push, which only stone ball can do, and so on.
For additional sonic satisfaction the levels even feature some metal domes that serve no purpose but to be bumped into just for making amazing gong sound.
I like it that when you get cocky and think like that's easy, I got this, the game quickly puts you into place. It basically says nigga you ain't shit, you got nothing on me.
Overall it's basically a mesmerizing travel through cleverly designed levels surrounded by relaxing music and outstanding graphics.
Definitely a must-have for mechanical keyboard gamers, it's a pure satisfaction playing this game with a great level of precision and control mechanical keyboard allows.
Search for "ballance widescreen fix" for modern displays support.10 -
do you have a GREAT eye for design?!
can you write a bubble sort algorithm in binary?!
do you know native, desktop, embedded, AND web programming languages?!
do you know you can go fuck yourselves?!
good luck unicorn searching 🤡 companies. there is no human that can do all of those on a level that you want. but, go ahead and set yourself up for failure. i'll remain firmly grounded on planet earth 🌎6 -
I’m back for a fucking rant.
My previous post I was happy, I’ve had an interview today and I felt the interviewer acted with integrity and made the role seem worthwhile. Fuck it, here’s the link:
https://www.devrant.io/rants/889363
So, since then; the recruiter got in touch: “smashed it son, sending the tech demo your way, if you can get it done this evening that would be amazing”
Obviously I said based on the exact brief I think that’s possible, I’ll take a look and let them know if it isn’t.
Having done loads of these, I know I can usually knock them out and impress in an evening with no trouble.
Here’s where shit gets fucked up; i opened the brief.
I was met with a brief for an MVP using best practice patterns and flexing every muscle with the tech available...
Then I see the requirements, these fucking dicks are after 10 functional requirements averaging an hour a piece.
+TDD so * 1.25,
+DI and dependency inversion principle * 1.1
+CI setup (1h on this platform)
+One ill requirement to use a stored proc in SQL server to return a view (1h)
+UX/UI design consideration using an old tech (1-2h)
+unobtrusive jquery form post validation (2h)
+AES-256 encryption in the db... add 2h for proper testing.
These cunts want me to knock 15-20h of Work into their interview tech demo.
I’ve done a lot of these recently, all of them topped out at 3h max.
The job is middling: average package, old tech, not the most exciting or decent work.
The interviewer alluded to his lead being a bit of a dick; one of those “the code comes first” devs.
Here’s where shit gets realer:
They’ve included mock ups in the tech demo brief’s zip... I looked at them to confirm I wasn’t over estimating the job... I wasn’t.
Then I looked at the other files in the fucking zip.
I found 3 of the images they wanted to use were copyright withheld... there’s no way these guys have the right to distribute these.
Then I look in the font folder, it’s a single ttf, downloaded from fucking DA Font... it was published less than 2mo ago, the license file had been removed: free for Personal, anything else; contact me.
There’s no way these guys have any rights to this font, and I’ve never seen a font redistributed legally without it’s accompanying licence files.
This fucking company is constantly talking about its ethical behaviours.
Given that I know what I’m doing; I know it would have taken less time to find free-for-commercial images and use a google font... this sloppy bullshit is beyond me.
Anyway, I said I’d get back to the recruiter, he wasn’t to know and he’s a good guy. I let him know I’d complete the tech demo over the weekend, he’s looked after me and I don’t want him having trouble with his client...
I’ll substitute the copyright fuckery with images I have a license for because there’s no way I’m pushing copyright stolen material to a public github repo.
I’ll also be substituting the topic and leaving a few js bombs in there to ensure they don’t just steal my shit.
Here’s my hypotheses, anyone with any more would be greatly welcomed...
1: the lead dev is just a stuck up arsehole, with no real care for his work and a relaxed view on stealing other people’s.
2: they are looking for 15-20h free work on an MVP they can modify and take to market
3: they are looking for people to turn down this job so they can support someone’s fucking visa.
In any case, it’s a shit show and I’ll just be seeing this as box checking and interview practice...
Arguments for 1: the head told me about his lead’s problems within 20mn of the interview.
2: he said his biggest problem was getting products out quickly enough.
3: the recruiter told me they’d been “picky”, and they’re making themselves people who can’t be worked for.
I’m going to knock out the demo, keep it private and protect my work well. It’s going to smash their tits off because I’m a fucking great developer... I’ll make sure I get the offer to keep the recruiter looked after.
Then fuck those guys, I’m fucking livid.
After a wonderful interview experience and a nice introduction to the company I’ve been completely put off...
So here’s the update: if you’re interviewing for a shitty middle level dev position, amongst difficult people, on an out of date stack... you need people to want you, don’t fuck them off.
If they want my time to rush out MVPs, they can pay my day rate.
Fuuuuuuuuck... I typed this out whilst listening to the podcast, I’m glad I’m not the only one dealing with shit.
Oh also; I had a lovely discriminatory as fuck application, personality test and disability request email sent to me from a company that seems like it’s still in the 90s. Fuck those guys too, I reported them to the relevant authorities and hope they’re made to look at how morally reprehensible their recruitment process is. The law is you don’t ask if the job can be done by anyone.6 -
Job posts that look for experience in everything! Experience in large scale enterprise kubernetes bullshit! What the fuck is kubernetes, a Greek god?? 4 plus years experience in aws! 5 years experience in cloud infrastructure scaling! 5 years experience in working with stakeholders and collaborating UX design! 5 years experience in React Native! 5 years experience in noSQL! 5 years experience in firebase! 5 years experience in graphics design! 5 years experience in node CSS! And every javascript known to mankind! I would love to meet this legendary developer that every company seems to want! Sick of these ads that ask for god level experience in every development role or tech. It’s like they’re hiring one developer to write their entire system from scratch which would obviously require godly expertise in front back and every fucking end there is to fucking build10
-
Working in the embedded systems industry for most of my life, I can tell you methodical testing by the software engineers is significantly lacking. Compared to the higher level language development with unit tests and etc, something i think the higher level abstracted industry actually hit out the of park successfully.
The culture around unit testing and testing in general is far superior in java and the rest.
Down here in embedded all too often I hear “well it worked on my setup... it worked at my desk”.. or Oh I forgot to test that part.. or I didn’t think that perticular value could get passed in... etc I’ve heard it all. Then I’ve also heard, you can’t do TTD or unit tests like high level on embedded... HORSESHIT!
You most definitely can! This book is a great book to prove a point or use as confirmation you are doing things correctly. My history with this book was I gonna as doing my own technique of unit testing based on my experience in the high level. Was it perfect no but I caught much more than if I hadn’t done the testing. THEN I found this book, and was like ohh cool I’m glad I’m on the right thought process because essentially what they were doing in the book is what I was doing just slightly less structured and missing a few things.
I’ve seen coworkers immediately think it’s impossible to utilize host testing .. wrong.
Come to find out most the of problems actually are related to lack of abstraction or for thought out into software system design by many lone wolf embedded developers.. either being alone, or not having to think about repercussions of writing direct register writes in application or creating 1500 line “main functions” because their perception is “main = application”. (Not everyone is like this) but it seems to be related to the EEs writing code ( they don’t know wha the CS knows) and CS writing over abstraction and won’t fit on Embedded... then you have CEs that either get both sides or don’t.. the ones to understand the low level need but also get high level concepts and pariadigms and adapt them to low level requirements BOOM those are the special folks.
ANYway..the book is great because it’s a great beginner book for those embedded folks who don’t understand what TDD is or Unit testing and think they can’t do it because they are embedded. So all they do is AdHoc testing on the fly no recording results no concluding data very quick spot check and done....
If your embedded software engineers say they can’t unit test or do TDD or anything other than AdHoc Testing...Throw the book at them and say you want the unit test results report by next week Friday and walk away.
Lol7 -
Currently I'm working on 3D game engine and making a 3D minesweeper game with it.
I have started creating a compiler not long ago using my own implementation (no Lex no tools nothing just raw algorithms application) to hopefully some day I will be able to make a language that works on top of glsl inside my game engine. I have compilers design class this semester which haven't even started yet and made a lexical analyser generator. I also have another class about geographical information systems which I will be using my engine to create some demos for some 3D rendering techniques like level of details or maybe create something similar to arcgis which we will be using.
Oh man I have many stuff I want to do.
Here is a gif showing the state of my minesweeper game. I clearly lack artistic skills lol. One thing I will be making is to model the sphere as squares not triangles.
Finally I want to mention that I months ago saw someone here at devrant making a voronoi diagrams variant of this which inspired me to make this.
I made long post so
TLDR : having fun reinventing the weel and learning 😀 -
NEW 6 Programming Language 2k16
1. Go
Golang Programming Language from Google
Let's start a list of six best new programming language and with Go or also known by the name of Golang, Go is an open source programming language and developed by three employees of Google and the launch in 2009, very cool just 3 people.
Go originated and developed from the popular programming languages such as C and Java, which offers the advantages of compact notation and aims to keep the code simple and easy to read / understand. Go language designers, Robert Griesemer, Rob Pike and Ken Thompson, revealed that the complexity of C ++ into their main motivation.
This simple programming language that we successfully completed the most tasks simply by librariesstandar luggage. Combining the speed of pemrogramandinamis languages such as Python and to handalan of C / C ++, Go be the best tools for building 'High Volume of distributed systems'.
You need to know also know, as expressed by the CTO Tokopedia namely Mas Leon, Tokopedia will switch to GO-lang as the main foundation of his system. Horrified not?
eh not watch? try deh see in the video below:
[Embedyt] http://youtube.com/watch/...]
2. Swift
Swift Programming Language from Apple
Apple launched a programming language Swift ago at WWDC 2014 as a successor to the Objective-C. Designed to be simple as it is, Swift focus on speed and security.
Furthermore, in December 2015, Swift Apple became open source under the Apache license. Since its launch, Swift won eye and the community is growing well and has become one of the programming languages 'hottest' in the world.
Learning Swift make sure you get a brighter future and provide the ability to develop applications for the iOS ecosystem Apple is so vast.
Also Read: What to do to become a full-stack Developer?
3. Rust
Rust Programming Language from Mozilla
Developed by Mozilla in 2014 and then, and in StackOverflow's 2016 survey to the developer, Rust was selected as the most preferred programming language.
Rust was developed as an alternative to C ++ for Mozilla itself, which is referred to as a programming language that focus on "performance, parallelisation, and memory safety".
Rust was created from scratch and implement a modern programming language design. Its own programming language supported very well by many developers out there and libraries.
4. Julia
Julia Programming Language
Julia programming language designed to help mathematicians and data scientist. Called "a complete high-level and dynamic programming solution for technical computing".
Julia is slowly but surely increasing in terms of users and the average growth doubles every nine months. In the future, she will be seen as one of the "most expensive skill" in the finance industry.
5. Hack
Hack Programming Language from Facebook
Hack is another programming language developed by Facebook in 2014.
Social networking giant Facebook Hack develop and gaungkan as the best of their success. Facebook even migrate the entire system developed with PHP to Hack
Facebook also released an open source version of the programming language as part of HHVM runtime platform.
6. Scala
Scala Programming Language
Scala programming termasukbahasa actually relatively long compared to other languages in our list now. While one view of this programming language is relatively difficult to learn, but from the time you invest to learn Scala will not end up sad and disappointing.
The features are so complex gives you the ability to perform better code structure and oriented performance. Based programming language OOP (Object oriented programming) and functional providing the ability to write code that is capable of evolving. Created with the goal to design a "better Java", Scala became one behasa programming that is so needed in large enterprises.3 -
I shit you not. This this a job qualifications qualifications entry level on LinkedIn.
7+ years working as part of a development team and with the following technologies:
Node.js Typescript and Java-based, microservice-driven applications using Spring Boot or similar framework
RESTful API design / microservice architectures
MongoDB or any other NoSQL DB
Message queues e.g. RabbitMQ, Kafka etc.
Modern MV*(MVC, MVVM, etc..) frameworks e.g. React, Angular, Vue etc.
JavaScript and design patterns, CSS and HTML
Modern CSS and view libraries e.g. RxJS, Angular Material, Typescript, JS ES6 etc.
Unit and UI testing using third party tools e.g. Jest, Cucumber, Groovy & Spock, etc.
Bachelor's degree in computer science or related field6 -
I fucking hate chained methods. Ok, not all of them. Query things like array.where.first... that stuff is ok.
Specially if it's part of the std lib of a lang, which would be probably written by a very competent coder and under scrutiny.
But if you're not that person, chances are you'll produce VASTLY inferior code.
I'm talking about things like:
expect(n).to.be(x).and.not(y)
And the reason I don't like it is because it's all fine and dandy at first.
But once you get to the corner cases, jesus christ, prepare to read some docpages.
You end up reading their entire fucking docs (which are suboptimal sometimes) trying to figure if this fucking dsl can do what you need.
Then you give up and ask in a github issue. And the dev first condescends you and then tells you that the beautiful eden of code he created doesn't let you do what you want.
The corner cases usually involve nesting or some very specific condition, albeit reasonable.
This kind of design is usually present in testing or validation js libraries. And I hate all of those for it.
If you want a modern js testing lib that doesn't suck ass, check avajs. It's as simple as testing should be.
No magic globals, no chaining, zero config. Fuck globals forced by libs.
But my favorite thing about it that is I can put a breakpoint wherever the fuck I want and the debugger stops right fucking there.
Code is basically lines of statements, that's it, and by overusing chaining, by encouraging the grouping of dozens of statements into one, you are preventing me from controlling these statements on MY code.
As an end dev, I only expect complexity increases to come from the problems themselves rather than from needlessly "beautified" apis.
When people create their own shitty dsl, an image comes to my mind of an incoherent rambling man that likes poetry a lot and creates his own martial art, which looks pretty but will get your ass kicked against the most basic styles of fighting.
I fucking hate esoteric code.
Even if I had to execute a list of functions, I'd rather send them in an array instead of being able to chain them because:
a) tree shaking would spare from all the functions i didn't import
b) that's what fucking arrays are for, to contain several things.
This bad style of coding is a result of how low the barrier to code in higher level langs are.
As a language or library gets easier to use you might think that's a positive thing. But at the same time it breeds laziness.
Js has such a low learning curve that it attacts the wrong kind of devs, the lazy, the uninspired, the medium.com reader, the "i just care about my paycheck" ones.
Someone might think that by bashing bad js devs I'm trying to elevate myself.
That'd be extremely stupid. That's like beating a retarded blind man in a game and then saying "look, I'm way better than this retarded blind man".
I'm not on a risky point of view, just take a stroll down npmjs.com. That place is a landfill. Not really npm's fault, in fact their search algorithm is good.
It's just the community.
Every lang has a ratio of competence. Of competent to incompetent devs.
You have the lang devs and most intelligent lib devs at the top. At the bottom you have the bottom.
Well js has a horrible ratio. I wouldn't be shocked to find out that most js devs still consider using import or await the future.
You could say that js improved a lot, that it was way worse beforr. But I hate chaining now, and i hated back then!
On top of this, you have these blog web companies, sucking the "js tutorial" business tit dry, pumping out the most obscenely unprofessional and bar lowering tutorials you can imagine, further capping the average intelligence of most js devs.
And abusing SEO while they're at it, littering the entire web with copy paste content.2 -
Frontend Developer wanted. Required skills: C#, PHP, MySQL, HTML, CSS, Jquery, Java, JavaScript, React, Angular, Vue, Laravel, Wordpress, Shopify, Docker, Git, SVN, Ruby.
Must have at least 3 years of working experience in a high level company. Only worked for A+ clients and ultra high traffic websites.
Also nice would be UX/UI, Design Systems, Wireframing.
Experienced in sales and cleaning floors. Getting coffee putting music on etc
Salary indication: €18009 -
From NAND to Tetris..
This book is IMO the best book for those who want to venture to the lower level programming.
This books retrains you’re thinking, teaches you from the bottom up! Not the typical top down approach.
You begin with the idea of Boolean algebra. And the move on to logic gates.. from there you build in VHDL everything you will use later.
Essentially building your own “virtual machine”.. you design the instruction set. Of which you will then write assembly using the instruction set to control the gate you built in VDHL.
THEN you will continue up the abstraction layer and will learn how a compiler works, and then begin written c code that is then compiled down to your assembly of your instructions set to be linked and ran on your virtual machine you built.
All the compiler and other tools are available on the books website. The book is not a book where you copy and paste, run and done.... you kinda have to take the concepts and apply them with this book.
Then once you master this book, take it the extra step and learn more about compilers and write your own compiler with the dragon book or something.
Fantastic book, great philosophy on teaching software.. ground up rather than top down. Love it! It’s Unique book.21 -
Got my first laptop while I was overseas.
It was a windows hp laptop with Vista.
It was an absolute piece of shit.
Decided to find the people responsible of it.
Got to what a software engineer was.
Boss told me to look in the library to see if i find some books on the subject. Got a Java and C++ book.
Shit was hard af cuz I had no clue what I was doing, but I liked it. Decided to look more into an application wise platform of study rather than doing basic CLI shit. Got into web development with Java. Got a hold of more JS. Liked JS more cuz shit was easy, found about server side JS with classic ASP, did VBScript as well.
Eventually found Python, fell in love but hated the whitespace ussage for block level code etc. Found Ruby, to this day the most beautiful language according to me. Read about why's poignant intro to Ruby.
Dug it, but wanted some other things. Found out about the study of data structures ans algorithms, then harvard's free cs50 course, then mit courseware, rice's python class. Took all of them. CS50 introduced php, liked it, sounded like a drug, was easy to use, for whatever fucking reaskn my ass decided to use version 4 even though 5 was already out. Learned to appreciate advancements in programming language even more
Hipster phase, while studying php got more into JS and web design with more css concepts, wanted my shit to be pretty. Somehow landed with Common Lisp. Mind fucking blown.
Continued with php. Got into uni, math made sense through programming, ok so I am stupid, but not that stupid, python is the best calculator ever.
bring it bitches.
Graduated.
Still don't know what I am doing.1 -
Probably the MOST complete software book on a very broad subject.
This is book to read for those of you are near college grad, first job in the industry. But to the level of detail and broad coverage this book has I think it’s actually a great book for everyone in the industry almost as a “baseline”
From requirements, project planning, workflow paradigms. Software Architecture design, variable naming, refactoring, testing, releasing the book covers everything, not only high level but also in reference to C.
Why C ...because in the consumer electronics, automotive industry, medical electronics and other industries creating physical products c is the language of choice, no changing that. BUT it’s not a C book... it contains C and goes into dept into C but it’s not a C book, C is more like a vehicle for the book, because there are long established, successful industry’s built around it. Plenty of examples.
When I say it’s the most complete on a broad subject seriously like example the chapter about the C language is not a brief over like many other books, for example 10 pages alone are dedicated to just pointer! Many C books have only a few paragraphs on the subject. This goes on depth.
Other topics, recursion, how to write documentation for your code.
Lots of detail and philosophy of the construction of software.
Even if you are a veteran software engineer you could probably learn a thing or two from the book.
It’s not book that you can finish in weekend, unless you can read and comprehend over 1000 pages.
Very few books cover such a broad topic ALL while still going into great detail on those subtopics. the second part is what lacks in most “broad topic books” ..
Code Complete.. is definitely “Complete”
So the image doesn’t match the rest of my book images because I tried to make an amage to cover of the book, inception style kinda haha 😂19 -
This fucking teacher was my "Web Design" teacher in high school.
Okay, yes, I acknowledge that this is an entry level course, but does that honestly mean that we need to teach the same source taught to students in the 90s? You know, the one where all layouts are table/iframe-based?
I understand that I completely disregarded your set criteria for grading by using CSS to create my website rather than tables and I frames, however I believe that it's fairly logical to conclude that anyone using CSS has a sufficient comprehension of HTML to be able to pass your stupid assignments. So why must time be wasted with coding poorly designed sites? -
First year: intro to programming, basic data structures and algos, parallel programming, databases and a project to finish it. Homework should be kept track of via some version control. Should also be some calculus and linear algebra.
Second year:
Introduce more complex subjects such as programming paradigms, compilers and language theory, low level programming + logic design + basic processor design, logic for system verification, statistics and graph theory. Should also be a project with a company.
Year three:
Advanced algos, datastructures and algorithm analysis. Intro to Computer and data security. Optional courses in graphics programming, machine learning, compilers and automata, embedded systems etc. ends with a big project that goes in depth into a CS subject, not a regular software project in java basically.4 -
Need to whip up a quick demo on how a site might work for an organization, so I figured I'd just use the default twentynineteen theme and customizer to get it set up.
Turns out that twentynineteen *does* *not* *have* sidebars.
Instead, all of your content is offset to the left.
And all right-floated boxes go off-margin to the right.
And this is apparently a *feature* because now you can change your sidebar on every damn page instead of setting it in one place like a good site design would dictate! (link: https://github.com/WordPress/...)
I've been trying to bite my tongue and give it a fair shot, but saying that having the only dedicated widget area in the footer and forcing you to rebuild your sidebar on every damn page you want it on is a good thing is beyond the pale stupid. If you need that level of customization on every page, you don't know what you're doing. At the very least include a sidebar and give people the option of overriding it.
And for the love of God, *don't throw the entire goddamn body content off-center claiming you're leaving space for a sidebar you're not going to provide*!2 -
It was not until 20 that I had access to regular computing. In school I had to take up Finance as my Maths was weak. I couldn't take Sciences including computers and how could I , my childhood wasn't as fortunate as my peers.
When I entered college I got my brothers old gaming pc as we had a couple of work laptops at home. I was always the inquisitive one. I got interested in web development just because of curiosity while I was on my first job and I hated it. I used to write article and freelanced and ran a website for friends where I learned a lot by trial and error. I single handedly learned mySQL, PHP and basic web development.
The main job was a core night from 11pm -8 am . Drained me and my social life drowned. I lost my brother in an accident. Silver Lining: I quit my job.
I understood I was interested in computers like nothing else. I single handedly learned a programming language. After leaving the job I took up classes to learn from root level in a structured manner: Web design and Development.
Now though I am jobless and I am searching for my second job it is for something I love. :)2 -
Everything about the company is a mess. The only thing that is decent is the people. And by that I mean they aren't shit.
Workflows are fucked.
Clients are fucked. You're pressuring me to get this shit production ready before new year's eve and you still don't know what the text should say and want to make changes to the UI? The fuck?!
Design is a complete shit show. There is a design team. They only make a fucking psd to show clients how an interface would look like. No mobile version (but it's still expected to work!), no markup. Resolution is fucking inconsistent and whenever a change is requested, they are nowhere to be seen so I have to actually do designing on top of having to use this worthless fucking framework I hate it so much.
Codebases are turbo-fucked because of said framework.
Databases are an inconsistent, fucked up mess. No foreign key constraints because every single fucking table is using the MyISAM engine.
And the thing that really makes me incredibly angry is all the "custom systems" look the fucking same at the database level. Like 30 fucking useless tables made for stupid HR workflows that make no fucking sense.1 -
I really like this book on the basis of the philosophy overall, no this doesn’t solve all problems but it’s a good baseline of “guidelines/rules” to program by. Good metrics or goals to architect and design software projects high and low level projects.
Fight Software Rot
Avoid duplicate code
Write Flexible, dynamic, adaptable code
Not cargo cult programming and programming by coincidence.
Make robust code, contracts/asserts/exceptions
Test, Test, and TEST again and Continue testing.. this is a big one.. not so much meaning TDD.. but just testing in general never stop trying to break your software.. FIND the bugs.. you should want to find your bugs. Even after releasing code the field continue testing.24 -
The reason I stick around at my current job is thanks to a mentor who has helped me reach greater potential.
He's our senior architect.
It began with him simply bouncing ideas off me. I was a rubber duck basically. After a while I began to understand these ideas. All sorts of design patterns, cache invalidation problems and solutions, and so much more.
It was almost as if through osmosis that I began to research things and learn more and more about topics I had only barely seen in high-level articles and papers.
Once I began to contribute to the discussion, he helped foster that. I went from being a rubber duck to a protege.
My pay here isn't what it should be. The problems we're faced with are stressful and often times wear me out. I stay because I'm self-taught and I yearn for learning as I always have.
This isn't just my job, but my passion. I love what I do, and I get up happy to come here every day knowing I'll learn something new while doing what I love.1 -
Update: https://devrant.com/rants/4676421/...
I told you all. I fucking told you. Nobody listened to me.
Good people just leave.
This dude who I look upto and is kind of my mentor in the org and has spent a decade here, just resigned.
What the fuck!!!!
And with that, the attrition in product team is insanely high, to the point that it's scary.
My manager is not responsive and is often reactive instead of being proactive.
While the leadership is super excited about the product and everyone says they are hiring more and more people in product team, the design says our product is not a priority for them and we are just left with one design resource.
I was conversing with my colleague and we both are super scared that they shouldn't scrap the product and fire us.
This seems unlikely with all the logical calculations that we did but in a capitalist system we have to be prepared for anything.
I am shit scared right now because there is no clarity on what could happen next.
On the other hand, my skip level manager is taking a lot of interest in my work and is working very closely with me and taking more ownership of our product than my direct manager.
Everyone says our product is a top priority and tech is super agressive about it.
One thing that could happen is my manager leaving and not telling us about it upfront.
In which we would just report to our skip level manager and growth chances would be even better.
But at this stage, this seems super scary to me.3 -
I ended becoming a backend engineer because I love designing backend systems. High Level Design is ❤️
Also, I just don't have the patience required to conquer CSS 🤯😤5 -
Dear previous dev on this project,
I know that everyone loved you and still admires you for being so nice and having such a great knowledge. Please teach me your ways of achieving this level of popularity while writing big bowls of fucking flying spaghetti monster code with a bunch of hidden bugs and thousands of lines of unit tests that clearly never been used since it is literally impossible to run them thanks to missing mocks and overall bad design.
Teach me so I can become this person who shits big reeking piles in the office in front of everyone and even after leaving people still praise them for being exceptionally clean and sophisticated.3 -
Here we go....
At our school we had different industry people come in and talk about whatever they want to.
My last presenation for the day is on 3D modelling in Game Design, and of course we have middle school kids being generally loud and obnoxious.
Some fuckers are being exceptionally obnoxious, and the teachers decided, in their infinite FUCKING wisdom, to stick them in front of a table where Juniors and Seniors are sitting, minding our own buisness.
Of course, the fuckers decided to continue being obnoxious and despite my request to keep it down, and another Senior's direct approach to tell them to shut up, they continue being disruptive.
At one point, a teacher, again using INFINITE FUCKING WISDOM, decided that instead of removing the fuckers from the room, put a Senior in between them, hoping that that would somehow keep them quiet. Yes, the fucking preschool level attempt didn't work.
Eventually a teacher concluded that the fuckers were pissing us off and removed them from the room. Thank fuck.
That feels much better, excuse me as I need to reinstall an OS on my desktop since the Universe seems to fucking hate me today.undefined presentations shut the fuck up grow the fuck up fucking immature assholes the universe fucking hates me today -
Not a question per se but an assignment -
Design an application that could find logs between two timestamps where the logs are stored in 10000 files, each with a file size of ~16GB.
For an entry level position this was a really good and interesting problem to solve.11 -
to the guys saying "oop is dumb" / "i don't need oop" / "i've never worked with oop"...
i have some questions:
- which language are you working with
- which problems are you solving
- how big is your code base
- how do you maintain readability of your code?
don't get me wrong, i don't believe that oop is always the answer. i'm just curious which fields these statements are coming from. if they all come from a low level (assembler, C, ..) or functional languages or "scripty" languages (python, JS), or if there are also people working with languages like C++ where oop is pretty much established. and if the latter, i'm curious how people design their code and what problems they solve... tell me your story :D30 -
Workload rant.
Our new line manager is overly expecting from all of us (product/design/tech) and is micro managing on ground level without having any real sense of reality. He just wants everything to be built overnight.
He is smart, no doubt about that. But guess, I learnt from him what I had to. Not to stereotype but he is a typical Indian manager who keeps pushing boundaries.
He just added 80 features for Q1 roadmap with on 3 PMs, 1 Designer, 1TPM, and bunch of techies .
What the actual fuck! 😂😂😂 And he wanted to add more, thankfully we ran out of time in the meeting.
And my super talent and genius blabbering co-woker who works mechanically just fucked herself real bad. Lol
I kept telling her not to add Feature XYZ to the roadmap because:
1. There'll be spill over from Q4
2. She is already overloaded with 1 task and keeps crying all day about being unable to handle it
3. She is setting wrong expectations with management for herself and rest of the team
4. Boss will add more work and she'll be fucked
She was adamant and did not listen.
Now this is what happened:
1. ALL her Q4 items got pushed to Q1. LMFAO
2. She was literally crying since morning on calls for being overloaded and we are yet to start Q1 assignments
3. Additional tasks along side feature XYZ were added on her plate
I tried to push back the manager and that's when he said okay, let's keep some items for Q2.
But holy shit. 80 features between such a small team and wanted to done in few weeks.
I need to pump more steam in my job hunt activity. This place is ridiculously toxic.33 -
"Pokemon Let's Go" review:
I knew it would be a very easy game, made to transition Pokemon Go players to the core series of games, but this game is just poorly thought out. The multiplayer was obviously an afterthought; there is no split-screen. When the other player goes off-screen, they are lost off camera. Player 2 cannot interact with anything: they cannot talk to people, collect items, or initiate battles (They walk right through Pokemon)
The game is too easy by design. You cannot fight wild Pokemon, so you end up having 6 Pokemon by the beginning of the game all at full health (And everything gets XP when you catch something, so most of your Pokemon will be up to level 6-10 by your first battles) and the opposition will only have one level 3-4 Pokemon.
This trend continues throughout the game.
The map is tiny. You could walk the whole thing in an hour. Even Gameboy Pokemon maps were larger.
I knew this going into it, but it only has gen 1, which means pretty much no Pokemon, and they're the ones that I'm bored of. Every shitty game starts with generation 1 pokemon then ever introduces anything else. I'm sick of pidgeys!
Plus the hefty price tag of $60 just makes this game not worth much, despite the hype they tried to give it. That's probably why they were to secretive about the gameplay before launch: they knew it was bad,6 -
Well shit, now I (re-)learned C,
And all I want to do is program in C,
But all C jobs are like -
"C guru that merged to Linux kernel"
"Driver writing low level must know Assembly"
"Military-grade realtime hardware design"
Isn't there a C job that's like Python - "here I wrote this script in 5 minutes and spent the rest of the day playing Eve Online" :D :D10 -
4 years ago I made a personal goal/plan to be a full stack developer. Meaning a good understanding of any development between os level code and web/front end user experience.
Over the years this term 'full stack' has been abused greatly and now basically means 'a javascript developer that generally knows what they are talking about'.
So now, devRant collective I ask you. What do you call a developer with good skills in:
- os level code (c, c++ and os apis)
- database level tech (advanced querying and db aglo/modeling)
- software architecture
- application level (workflow and business logic)
- transport level (protocol design and usage)
- front end tech (graphics programming and event driven paradigm)
- user experience14 -
Everyone I work with: If we use <framework> then we can solve <insert complex low level issue>.
Me: That is great but what is the actual solution design?
Evwryone: We use <framework> to solve <issue>.
Me: Yeah I get that.... But how? What is the plan? The architecture of this new system to support <framework> and are there issues that get created?
Everyone: If we use <framework> we won't have the issue we are talking about.5 -
Android development sucks assssssssssss.
They FINALLY made a design system that doesn't look ugly so I thought might as well upgrade my old apps to it.
Publish and tonnnnes of crashes hours after launch.
Test on older devices and turns out some @color/material_xyz was missing in a lower API code BUT available in higher ones? No fallback, no error in AndroidStudio, just a runtime crash. Amazing
Then the location permissions glitch up. On lower androids even if you aren't actively tracking the user, the system tries to call some method which if you haven't overridden, the app crashes at launch.
And no amount of wrapping in try-catch-ignore helps (https://stackoverflow.com/questions... helped)
OH AND THEN the above solution if used on latest Android code33, CRASHES ON RUNTIME. so more sets of 'if VCODE this then ask this else that' bullshit.
I don't even need location it's just for better ad money ffs.
I've been team-android since Froyo and hate apple's monopoly, but if this is the level of their competence, many will jump ship sooner or later.
PS: yes I know I should've checked for lower versions before hand but Im not gonna make 8 android VMs to test all when different things fail in different versions.
I did have to do that in the end, but for a meh pet project one shouldn't have to. The system should have enough fallbacks and graceful fails.3 -
Question: is it a red flag if I'm "not supposed to" blog about tips and tricks I've found at work (not even code level, just organization and general design patterns)? Reason given to me: "we need to be careful about due diligence and intellectual property for our investors to be satisfied". Am I working with idiots?9
-
PM wrote a really high-level requirement doc and asked me about estimates.
Me: Well, functionality-wise it will take 4-5 days provided the design is ready.
PM: Our designers are really full on schedule; Just do it! Expand your creativity. I believe in your taste of UX
Me: Listen, the implemented design will take much more time to change if we go back and forth. It's better to revise on the designer's screen.
PM: Oh don't be so modest! I trust you already. Just focus on the functionality, get it done first. For the design we'll talk about it later. Move fast and break things!
Me: ..Sigh. This is gonna end up badly.6 -
# Retrospective as Backend engineer
Once upon a time, I was rejected by a startup who tries to snag me from another company that I was working with.
They are looking for Senior / Supervisor level backend engineer and my profile looks like a fit for them.
So they contacted me, arranged a technical test, system design test, and interview with their lead backend engineer who also happens to be co-founder of the startup.
## The Interview
As usual, they asked me what are my contribution to previous workplace.
I answered them with achievements that I think are the best for each company that I worked with, and how to technologically achieve them.
One of it includes designing and implementing a `CQRS+ES` system in the backend.
With complete capability of what I `brag` as `Time Machine` through replaying event.
## The Rejection
And of course I was rejected by the startup, maybe specifically by the co-founder. As I asked around on the reason of rejection from an insider.
They insisted I am a guy who overengineer thing that are not needed, by doing `CQRS+ES`, and only suitable for RND, non-production stuffs.
Nobody needs that kind of `Time Machine`.
## Ironically
After switching jobs (to another company), becoming fullstack developer, learning about react and redux.
I can reflect back on this past experience and say this:
The same company that says `CQRS+ES` is an over engineering, also uses `React+Redux`.
Never did they realize the concept behind `React+Redux` is very similar to `CQRS+ES`.
- Separation of concern
- CQRS: `Command` is separated from `Query`
- Redux: Side effect / `Action` in `Thunk` separated from the presentation
- Managing State of Application
- ES: Through sequence of `Event` produced by `Command`
- Redux: Through action data produced / dispatched by `Action`
- Replayability
- ES: Through replaying `Event` into the `Applier`
- Redux: Through replay `Action` which trigger dispatch to `Reducer`
---
The same company that says `CQRS` is an over engineering also uses `ElasticSearch+MySQL`.
Never did they realize they are separating `WRITE` database into `MySQL` as their `Single Source Of Truth`, and `READ` database into `ElasticSearch` is also inline with `CQRS` principle.
## Value as Backend Engineer
It's a sad days as Backend Engineer these days. At least in the country I live in.
Seems like being a backend engineer is often under-appreciated.
Company (or people) seems to think of backend engineer is the guy who ONLY makes `CRUD` API endpoint to database.
- I've heard from Fullstack engineer who comes from React background complains about Backend engineers have it easy by only doing CRUD without having to worry about application.
- The same guy fails when given task in Backend to make a simple round-robin ticketing system.
- I've seen company who only hires Fullstack engineer with strong Frontend experience, fails to have basic understanding of how SQL Transaction and Connection Pool works.
- I've seen company Fullstack engineer relies on ORM to do super complex query instead of writing proper SQL, and prefer to translate SQL into ORM query language.
- I've seen company Fullstack engineer with strong React background brags about Uncle Bob clean code but fail to know on how to do basic dependency injection.
- I've heard company who made webapp criticize my way of handling `session` through http secure cookie. Saying it's a bad practice and better to use local storage. Despite my argument of `secure` in the cookie and ability to control cookie via backend.18 -
Thought the day would never come but... I'm starting to hate android as an operating system...
It's just becoming so inconsistent and fragmented, it's almost at windows level of inconsistent.
Now either google should start regulating the app store and android itself or completely ditch android as a complete stand alone OS.
I would personally seperate android into a runtime and focus on fuschia by building the android runtime into it, that way it could pull system UI element design and such rather than have the user build apps that look completely out of place and don't follow rules like dark mode, theming and the such...
I'm not going to jump ship into iOS because fuck iOS but just really hope google really starting tightening android up else I feel like it's just going to starting breaking more and more into a steaming mess.5 -
Back when I was still in school for comp sci we had an advanced software engineering and design class with c++. At this time, everyone was expected to be proficient enough with cpp to go ahead and properly work with whatever the instructor would throw at us. And pretty much everyone was since past classes included a lot of c++ development. Of course, efficient at least related to academic studies rather than actual real world development.
Our teacher would mix in a lot pf phyisics and mathematics into what we were doing, something that I greatly enjoyed, while at the same time putting real world value concerning cpp best practices to avoid common pitfalls in the development of said language. Since most bugs seemed to be memory based he would be particularly strict about that.
One classmate, good friend and an actual proper developer now a days would ALWAYS forget to free his resources...ALWAYS for whatever fucking reason he would just ignore that shit, regardless of how much the instructor would make a point on it.
At one point during class on a virtual lecture the dude literally addressed a couple of students but when he got to my boy in particular he said: "you are the reason why people are praying to Mozilla and Hoare to release Rust as fast as possible into a suitable alternative to high performant code in C++, WHY won't you pay attention to how you deal with memory management?"
And it stuck with me. I merely a recreational cpp dev, most of my profesional work is done on web development, so I cannot attest to all the additional unsafe code that people encounter in the wild when dealing with cpp on a professional level.
But in terms of them common criticisms of C and C++ for which memory is so important to work with, wouldn't you guys say that it comes more from the side of people just not knowing what they are doing rather than a fault on the language itself?
I see the merits and beauty of Rust, I truly do, it is a fantastic language, with a standardized build system and a lot of good design put into it. But I can't really fathom it being the cpp killer, if anything, the real cpp killers are bad devs that just don't know what they are doing or miss shit.
What do y'all ninjas think?8 -
My worst team experience finished only a week ago:
- Be me
- be averaging 80% in completed modules and on track for a 1st
- have to take a team project worth double credits
- get stuck in random team with 40%ers
- lose 1 artist at the start (team of 12: 6 artists, 6 programmers)
- 2 artists contribute nothing and disappear for a few weeks
- I'm forced to do level design to have something to show (looked good tbh)
- weeks go by and too many contribute very little.
- by the end the team was basically 4 programmers and 2 artists contributing.
All other teams basically get an easy 2:1/1st just because their team turns up and contributes.
I could lose a 1st because of this module bringing down everything else, it also had a huge effect on what I could achieve for my dissertation due to time.
- did get an award at the end for managing to not kill someone and showing restraint 😂😂
Basically don't choose a degree where more than 25% of your mark is almost entirely out of your hands.
The small individual component I averaged over 90%! -
Okay so i graduated last year and got a job working for a place that sadly disappoints me in their web development practices. This place uses a dead technology(my opinion)called Cold Fusion by Adobe. They do not use any form of version control like Git and their sites are very shitty and the design and development is implemented very poorly honestly. It honestly makes me sad that i feel like im smarter than my department vp. That being said i do not feel challenged here and am looking to collaborate in some open source projects via Github preferably.I dont consider myself an expert in this field but i would say im about intermediate level in web development. Im pretty comfortable with HTML,CSS/SASS,PHP,JS/JQuery, and im pretty comfortable in the PHP framework Laravel. So if anyone is interested in collaborating or starting something up, id be so down for it. :)7
-
I believe it is really useful because all of the elements of discipline and perseverance that are required to be effective in the workforce will be tested in one way or another by a higher learning institution. Getting my degree made me little more tolerant of other people and the idea of working with others, it also exposed me to a lot of topics that I was otherwise uninterested and ended up loving. For example, prior to going into uni I was a firm believer that I could and was going to learn all regarding web dev by maaaaaself without the need of a school. I wasn't wrong. And most of you wouldn't be wrong. Buuuuuut what I didn't know is how interesting compiler design was, how systems level development was etc etc. School exposed me to many topics that would have taken me time to get to them otherwise and not just on CS, but on many other fields.
I honestly believe that deciding to NOT go to school and perpetuating the idea that school is not needed in the field of software development ultimately harms our field by making it look like a trade.
Pffft you don't need to pay Johnny his $50dllrs an hour rate! They don't need school to learn that shit! Anyone can do it give him 9.50 and call it a day!<------- that is shit i have heard before.
I also believe that it is funny that people tend to believe that the idea of self learning will put you above and beyond a graduate as if the notion of self learning was sort of a mutually exclusive deal. I mean, congrats on learning about if statements man! I had to spend time out of class self learning discrete math and relearning everything regarding calculus and literally every math topic under the sun(my CS degree was very math oriented) while simultaneously applying those concepts in mathematica, r, python ,Java and cpp as well as making sure our shit lil OS emulation(in C why thank you) worked! Oh and what's that? We have that for next week?
Mind you, I did this while I was already being employed as a web and mobile developer.
Which btw, make sure you don't go to a shit school. ;) it does help in regards to learning the goood shit.7 -
So the company decided to go agile. I am now a scrum master. And we have the local product owners and all. They made us do daily stand-ups.
I don't know what is a scrum master. Nobody knows what the hell is a stand-up. It seems to be an akward 30 minutes every day, when local product owner asks questions and demands status reports.
I did some googling and it seems that the scrum master is supposed to just support the team and solve problems. In our version the scrum master finds out the system architecture and requirements, fills the backlog, does the system design and reports to the project manager(s). Also reports to the clients about the general project status in an executive meetings. I also do the sprint planning, in which we fit the vague features that we are told into time tables with ready told dates.
Oh yeah, the team is just 2 guys. One of them is me. And the other guy relies completely on me to daily tell what to do, review the work and also answer all the project and company level questions that pop into his mind. He gets angry if he doesn't receive ready-thought solutions to all problems, since "you're the boss and it's your job to tell us what to do".
This is going to be a great year.4 -
// first rant
So this isn't really a "dev" rant but I'm a developer taking my first ever design class. It's a senior level, group based class where we design a mobile OS from the ground up, using any inspiration we like. I love it because I'm the developer and designer for all of the Android apps I've worked on so far. I get to practice my design skills and have a portfolio addition. Neat! It's a pretty easy class too.
But my group. Oh God my group.
I spent a week and a half designing the style guide and it was jam packed with anything we'd need. Typography, icons, rationales, you name it!
But noooo, they can't use it because it's not in sketch. As a Windows user, this is infuriating. So three weeks go by and all this work is done that's SUPER INCONSISTENT. Bad colors, elements off by 3px... I mean even the font sizes are just 1 or 2 off. Seriously, I wish I could just be frank with them and tell them to put in the 1% effort to make it right. It's really not that hard. I just don't want to screw up the peace in my group..2 -
Avoid ACPICA if at all possible. It's one garbage tier cluster fuck of bad design, horrible documentation and downright misleading and wrong code
It's meant to consist of an ASL compiler, disassembler, debugger, dumper, various user space utitilies and a kernel resident OSPM implementation *if* you can figure out what belongs to what. Even just compiling this pile of trash is a mystery in itself. Think you need the source files in source/common? EEEEH, wrong. Well, at least partially since most of them seem to be for the user space stuff..? Other ones *are* needed on the other hand. At least the disassembler and/or debugger and/or dumper components seem to reference them. Not that I could figure out how to compile those anyways. The real path to your goal seems to be to ignore a seemingly arbitrary subset of source and header files until your linker stops complaining
There's also a bunch of configuration defines, some of which *you* define, some defined *for* you, based on again others. Of course most of them do stupid shit. Enabling the debugger automatically enables debug logging. Enabling the disassembler force enables debug allocation tracking... What?
The code itself isn't of much help either. Looking in "os_specific/service_layers" you find what looks to be reference implementations of acpica functions in certain os' like windows and unix. Of course I had a look because AcpiOsReadMemory is supposed to read physical memory and I don't know how I would even implement that. But hey, osunixxf.c (xf for interface... of course) should tell me. I'll let you see for yourself in the attached image. Apparently it does fuck all and just returns AE_OK. No error, no logging, no nothing. Just ok. As you can imagine, AcpiOsWriteMemory doesn't do much more either.
...okay so maybe physical memory accesses aren't actually used and these functions are some sort of relic from past times? Nope! They are absolutely necessary for doing low level device interaction. WTF. So finally I went to the linux source and checked how *they* implemented them, and just as I thought, these functions are anything but no-ops...
...So for what fucking reason do these stupid interface implementations even exist but to purposefully mislead you?? They aren't used for fucking anything! As far as I know Windows doesn't even *use* ACPICA and Linux have their own fork with working implementations... They just sit there, just to tell you how to NOT do it
So that's some of my thoughts about ACPICA. Note that I haven't even used it as a library yet, I just got it to compile and link and it already fucked with me this much.
There's also so much more I didn't mention like that you *have* to modify the acpica source in order to get your own platform header working (else #error) eventhough the docs explicitely instruct you not too but you get the point
Don't use ACPICA if you don't have to. Save your sanity for something that's worth it -
When I was 12 I created my own LEGO manuals and monopoly boardgame variants.
When I was 14 and into gaming I had fun playing with a Q3 level editor for Wolfenstein (GtkRadiant), and drew boardgame maps.
When I was 16 I translated the game battledawn.com to French for in-game currency in return.
When I was 18 I fiddled with texture packs for Minecraft and got interested in Total War mods.
When I was 20 I met a student who studied webdev & design. I was so excited about basic HTML, CSS and later JS and PHP, that I read and learnt some every evening (and even failed an exam because I was learning PHP until 5AM)
I always wanted to use my skills to create something of use to others. Open-source is the perfect avenue for that and is also what enabled me to get here in the first place. And though I m've been professionally employed as dev since 2015, only the last 2 yrs I finally consider myself skilled enough to give back something of quality :)2 -
I think I need some "programming detox", a couple weeks away from any kind of software development. It's just not fun anymore, I have lost my drive, I'm lazy to learn new stuff, I never finish my projects, I don't even know if I enjoy web development anymore.
Actually, I'm kind of lost on what to do with my life.
I don't want to become a full time web developer because it's boring, it's always the same shit: write frontend with some sort of framework, design database, write backend, rinse and repeat. There's nothing new, all projects seem to have the same requirements.
I don't want to get into machine learning and whatnot because it's a lot of math and theory, I like math but idk if I would like doing that all day. Same goes for basically anything related to research.
Low level stuff: on paper I like it, it's interesting, but I'm too lazy to learn and whenever I come up with a robotics project I end up making a shopping list and forgetting about it because either 1) stuff is too expensive or 2) I can't make the parts I want without spending a lot of money on tools. Also from what I can see in school, VHDL is boring af.
I just don't know what I like anymore, nothing gets me excited, not even video games. I used to like csgo but I just suck at it and I only play it because there's nothing else to play and deep down I still have a little bit of hope of becoming a decent player, even though I know I never will.
I just don't know what I want out of life. Sometimes I just like having tons of school assignments (especially calculus ones) just to keep me busy.8 -
This year I could join the "Game Graphics" for my elective classes. After seeing that we are split almost exactly in half (graphics design and programmers) our tutor (graphic with 20+ exp in the field, worked on few Call of Duty titles and more) decided that instead of forcing everyone to draw something, we will be making games in groups.
So me, and my friend were grouped with two girls from graphic. I have to say, working close with them was an eyes-opening experience. They don't think like me, they don't see like me and they interpret everything different.
Anyway, as most experienced Unity dev (... Yeaaaah, one game self made and published) I was chosen to get rest of the programmers up to speed. Luckily no one objected and they did what I wanted them to do, so it wasn't bad.
Today was supposedly the last day to present finished prototype. After three weeks staying up till 1 am, working on this project, two other, and nornal job, it was supposed to end. But, no one was really ready. So tutor decided that we will only do this project, an 2D platformer, instead of two, this and 3D game.
While walking around and checking the progress he stayed with us at least two times, watching what we were doing. Since last two weeks were really hectic, we were finishing up animations, adding some polish and such. When he came to us for the second time, he played our prototype. He's a bit older guy, somewhere around his 60, and one could see he wasn't prepared for hard gameplay I presented him with my first level design ever.
He told us his feedback, about how hard it is and not really intuitive, but in the end, he was satisfied. We have made really great progress and brought him something he could play and finish. Which was more than most of other groups had at today. And, as a cherry on the top, he complimented me as a group chief. I don't remember the last time someone complimented my work. The feeling was... Incredible. Touching even.
So, yeah. My hard work wasn't in vain, even though we now have time till the end of the semester. Everyone in my team has given their all and now we can rest for a bit, while others are catching up. Right now I only have to polish some mechanics, rework a bit of level design and add tutorial, while girls from graphic design will be working on better background and sprites.
All in all, it was a pretty good day.6 -
How the Common Lisp Community will eventually die soon:
Clojure is the only main Lisp dialect having some sort of heavy presence in today's modern development world. Yes, I am aware of other(if not all) environments in which Lisp or a dialect of it is being used for multiple things, CADLisp, Guile Scheme, Racket, etc etc whatever. I know.
Not only is Clojure present in the JVM(I give 0 fucks about whether you like it or not also) but also has compilation targets for Javascript via Clojurescript. This means that i can effectively target backend server operations, damn near everything inside of the JVM and also the browser.
Yet, there is no real point in using Lisp or Clojure other than for pure academic endeavours, for which it is not even a pure functional programming language, you would be better served learning something else if you want true functional purity. But also because examples for one of the major areas in software development, mainly web, are really lacking, like, lacking bad, as in, so bad most examples are few in between and there is no interest in making it target complete beginners or anything of the like.
But my biggest fucking gripe with Lisp as a whole, specifically Common Lisp, is how monstrously outdated the documentation you can find available for it is.
Say for example, aesthetics, these play a large role, a developer(web mostly) used to the attention to detail placed by the Rails community, the Laravel community, django, etc etc would find on documentation that came straight from the 90s. There is no passion for design, no attention to detail, it makes it look hacky and abandoned. Everything in Lisp looks so severely abandoned for which the most abundant pool of resources are not even made present on a fully general purpose language constrained as a scripting environment for a text editor: Emacs with Emacs Lisp which I reckon is about the most used Lisp dialect in the planet, even more so than Clojure or Common Lisp.
I just want the language to be made popular again y'know? To have a killer app or framework for it much like there is Rails for Ruby, Phoenix for Elixir, etc etc. But unless I get some serious hacking done to bring about the level of maturity of those frameworks(which I won't nor I believe I can) then it will always remain a niche language with funny syntax.
To be honest I am phasing away my use of Clojure in place of Pharo. I just hate seeing how much the Lisp community does in an effort to keep shit as obscure and far away from the reach of new developers as possible. I also DESPISE reading other Lisp developer's code. Far too fucking dense and clever for anyone other than the original developer to read and add to. The idea that Lisp allows for read only code is far too real man.
Lisp has been DED for a while, and the zombies that remain will soon disappear because the community was too busy playing circle jerks for anything real to be done with it. Even as the original language of AI it has been severely outshined by the likes of Python, R and Scala, shit, even Javascript has more presence in AI than Lisp does now a days.9 -
I know I’ll get mixed views for this one...
So I’ll state my claim. I agree with the philosophy of uncle bob, I also feel like he is the high level language - older version of myself personality wise.. (when I learned about uncle bob I was like this guy is just like me but not low level haha).
Anyway.. I don’t agree with everything because I think he thinks or atleast I get the vibe he thinks everything can be solved by OOP, and high level languages. This is probably where Bob and I disagree. Personally I don’t touch ruby, python and java and “those” with a 10 foot pole.
Does he make valid arguments, yes, is agile the solve all solution no.. but agile ideas do come natural and respond faster the feedback loop of product development is much smaller and the managers and clients and customers can “see things” sooner than purly waterfall.. I mean agile is the natural approach of disciplined engineers....waterfall is and was developed because the market was flooded with undisciplined engineers and continues to flood, agile is great for them but only if they are skilled in what they are doing and see the bigger picture of the forest thru the trees.. which is the entire point of waterfall, to see the forest.. the end goal... now I’m not saying agile you only see a branch of a single tree of the forest.. but too often young engineers, and beginners jump on agile because it’s “trendy” or “everyone’s doing it” or whatever the fuck reason. The point is they do it but only focus on the immediate use case, needs and deliverables due next week.
What’s wrong with that?? Well an undisciplined engineer doing agile (no I’m not talking damn scrum shit and all that marketing bullshit).. pure true agile.
They will write code for the need due next week, but they won’t realize that hmm I will have the need 3 months from now for some feature that needs to connect to this, so I better design this code with that future feature in mind...
The disciplined engineer would do that. That is why waterfall exists so ideally the big picture is painted before hand.
The undisciplined engineer will then be frustrated in the future when he has to act like the cool aid man thru the hard pre mature architectural boundaries he created and now needs links or connections that are now needed.
Does moving to agile fix that hell no.. because the undisciplined engineer is still undisciplined.
One could argue the project manager or scrum secretary... (yes scrum secretary I said that right).. is suppose to organize and create and order the features with the future in mind etc...
Bullshit ..soo basically your saying the scrum kid is suppose to be the disciplined engineer to have foresight into realizing future features and making requirements and task now that cover those things? No!
1 scrum bitch focuses too much on pleasing “stake holders” especially taken literally in start ups where the non technical idiots are too involved with the engineering team and the scrum bastard tries to ass kiss and get everything organized and tasks working so the non technical person can see pretty things work.
Scrum master is a gate keeper and is not needed and actually hinders the whole process of making a undisciplined engineer into a disciplined engineer, makes the undisciplined engineer into a “forever” code grunt... filling weekly orders of story points unable to see the forest until it’s over because the forest isn’t show to the grunt only the scrum keeper knows the big picture..... this is bad this is why waterfall is needed.
Waterfall has its own problems, But that’s another story for another day..
ANYWAY... soooo where were we ....
Ahh yess....
Clean code..
Is it a good book, yes.. does uncle bobs personality show thru the book .. yes lol.
If you know uncle bob you will understand what I just did with this post lol. I had to tangent ( at least mine was related to the topic) ...
I agree with the principles of the book, I don’t agree with the extreme view point. It’s like religion there’s the modest folks and then there are the extremists. Well he’s the preacher of the cult and he’s on the extreme side.. but that doesn’t mean he’s wrong.. many things he nails... he just hits the nail thru the wall just a bit.
OOP languages are not the solution... high level languages do not solve everything.. pininciples and concepts can be used across the board and prove valuable.. just don’t hold everything up like the 10 commandments of which you cannot deviate from.. that’s the difference here I think..
Good book, just don’t take it as the Bible as a beginner, actually infact DONT read this book as a beginner. Wait a bit learn then reflect by reading this.15 -
So this happened when I was interning. We were developing an online application for hospitals. Now as it is with any new product. We had a lot of small issues popping up related changing of text or design colors. Now this piss kissing product manage of ours who has had no prior experience of a product of the scale we were developing started posting issues in the company’s internal whatsapp group. It was fine initially when the issues were less and small. However, when the amount and intensity grew, I suggested that he be given access as a issue poster on the git repo of the code.
Now I couldn’t comprehend his level of douchiness before hand but this guy started posting issued there but only a link to a google doc with the issue described there.
Then when came the time to change the status of these issues, I asked him to verify for his satisfaction that the issue is resolved and mark it as such. So Mr. Shitmenot started to maintain a fucking google sheet to maintain the status of issues and asked us to do the same. And upon demarcation he would manually change the color of the cells representing the issue. Like what the fuck dude.
I complained about this to my mentor who also happened to be he CEO but he couldn’t care less as if it was some debt that he owed the guy.
Safe to say I left the company shortly after things started to get out of hand and more shit began to happen. Yes there was more stuff that happened!!! -
I am going to rant about this being the exam week, it being hot as hell, and us having had a messed up semester study-wise... And I still managed to do good-ish in subjects somehow... Good as in, relatively good. I am no 4.0 GPA person by any means and could never be one if I studied only (if that's even realistic at all). Recently I applied to a job at Andersen Lab for a Trainee position. Got turned down because I lack experience. A TRAINEE POSITION. I could retake the interview but I feel weird with how I got rated a whole level lower than my IELTS score and two levels lower than my score at Epam (which is the more recent one!) and the questions were mostly so easy I could answer while half asleep. Just yeah. Also, while I understand the whole knowledge required thing... I don't get the need for THREE whole interviews only to then proceed to turn me down. I am continuously applying and still seeing no results. If I'm "lucky", I guess, I will get training from a bank. And then get employed there... Mentally doing very bad right now, just barely wanting to MOVE. Which is basically me being this close to giving up. Today's exam is in Linux Security and I swear, this was such a waste of a good sounding subject... Imagine, I could have learnt how to set up a server at home and all that but instead we did... The more basic stuff in Linux. And for the whole semester outside of two or three cases I was the only one in attendance. Anyways, I have been feeling like I just can't program anymore and stuff... Even though we did a Python subject this semester. And in that subject I just felt like we were going way too quickly considering a lot of the students there come from non-IT or close to that background...
I may need to put effort into learning 3D Environmental art, I have this feeling I would like doing that as a job in game dev. Oh, and I also wanna design this house that I have in mind for me. It's shaped like an Amanita Muscaria and instead of the white dots it has windows that are round, as well as a spiral staircase connecting the lower and upper floors. Need to figure out how to model that in something like AutoCAD (I have a bit of experience with it and that's why I'd like to try there... But I may have to learn other programs to do it for free), but it will take me a long time to execute since I am not the most organised in how I learn...
Anyways, I will only sporadically be there, so I may not see things here. I am somewhat busy with exams and then this NGO I recently became a founding member of (and I have to say, I kinda don't wanna be there, but there are things that have to be done). Also filling the documents for a Canadian visitor's visa to go finally see the family over there and all that. But the latter will probably not happen until next year...
Finally, I am wishing you all a sound mental health and happiness. I hope you do well in whatever you are doing at the moment or are planning to. Until next time!3 -
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 -
Our only pretty good and uderpayed graphic designed did not get raise so in few days he found company that offered him 1.5 more as starting wage.. Now we will be left with no designer and half of our project being behind schedule cause of unfinished graphic design.. losing 4x more than was raise that designer asked for...
Srsly there are greedy bosses.. then there are retarded bosses... but when Greedy retards run company it is next level idiocracy4 -
Yesterday I wanted to make a small infographic. I started with photoshop, switched to illustrator, then indesign, then back to illustrator. All of them have super shitty quirks when it comes to work like that.
Next time I will just build it as a website and screenshot it. Elegance of code-based design is just unmatched. It brings reusability, consistency and precision to another level.4 -
I'm in a senior level game design course, where me and two others have to create an actual game. I picked my teammates out bc I thought they've already taken classes in the subject(as they are both seniors and I'm a sophomore taking this as a final class for my minor). Turns out, they haven't taken any courses in game design and know nothing about the basics of making a game... FML, good thing they can code I guess lol.😅😓2
-
Virgin Powerbeats™ pro:
- can’t even fit into your pocket, you have to buy special iPants™ with bigger pockets, that would be $1499, thank you
- have buttons so finicky and annoying that you’re really better off with a touch area
- silicone tips deteriorate and are prone to stay inside your ears. Uh oh, anyone but certified iOtholaryngologists™ aren’t authorized to remove them or else they would be put to Apple Jail™. The removal would be $499 per ear, thank you
- you have to be a PhD topologist to figure out how to put them back into their case
- uh oh, one bud just randomly stopped working because of a design flaw in our case, that’s User Error™, would you like to pay for a replacement with your Apple Card™?
- a feel of greasy deteriorating clamshell
Chad Jabra Elite
- a feel of a brass zippo, magnets are just perfect
- firm, real buttons. Improve then just one level and you got the feel of IBM Model M
- you press a button and you hear whatever mics are picking, no need to ever pull them out
- most comfortable buds I’ve ever tried
- small case fits into pockets of my tight booty shorts just fine
- waterproof
- sounds better than anything Noble Audio have ever done
Beats suck i guess 🤷6 -
I started a company a while back that builds really simple wordpress sites and design for small businesses. I took a client on that needed things that were well above my skill level as a "programmer" and it's been equally frustrating and satisfying to consistently have the shit kicked out of me while spending hours trying to solve problem after problem. I've never worked for a company as a coder and one of the things I'm starting to wonder about is whether or not I'm "cut out" to be a programmer. I like doing it, but from a business owner perspective I don't know that I would actually want myself as an employee. My question is: does everyone feel like a ducking retard everyday they go at it with their job as a programmer?5
-
You would think that one might get used to the following scenario, but it still pisses me off every time it happens. I'm getting a design created by the customer that is specific to a pixel-level. The product I create in turn is very close to a 100% match visually and functional. And then a few days later, the work already done, I get renewed versions of the same designs. Just like that. With all those nooks and crannies replaced and new ones added, as if it didn't took time, effort and experience to make them functional in the first place. And no one blinks an eye. Not the customer, not our project managers. So after having me built you intricate card board house, you just smash it and tell me to rebuild? It's not always a huge deal but it happens so often and I guess it's part of the "customer is king" mentality, but it's bullshit. If the customer hands in a final design, then that's it. Any changes afterwards need to be paid extra. Otherwise it feels like I'm wasting my time and those changes will not get the same quality treatment for sure.1
-
I recently started a new job, where they introduced me to the concept of being handed a low-level technical design.
They've hired me to be a keyboard monkey. -
I can now appreciate some design decisions behind react-redux after witnessing some angular OOP clusterfuck.
I am sure there is some clean/correct way to code in angular, but everyone is treating angular as java.
Some angular application (the one I have to work with) is littered with network calls. It's difficult to spot duplicates. People usually resolve promises everywhere. In services, in a top-level component, or in for loops. In react, people use apollo/redux-query or redux-saga to handle network calls. Since these libraries prevent duplicate network calls internally and reassigning apollo network call function or redux action function is always useless, it's easy to spot all network calls in a component tree.
In angular, it's difficult to trace data mutations when data can be updated everywhere. In react, you can easily find UI state updates by tracing state hooks/dispatch/apollo usages.
In angular, it's difficult to trace data pipeline. Since everything is imperative by default, people need to add update functions in data subscriptions. With all the littered mutations. Soon you will lose track of what the fuck is going on.
I hope angular get the agonizing death it deserves and fuck everyone who codes JS OOP clusterfuck UI.8