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 - "code example"
-
One of our web developers reported a bug with my image api that shrunk large images to a thumbnail size. Basically looked like this img = ResizeImage(largeImage, 50); // shrink the image by 50%
The 'bug' was when he was passed in the thumbnail image and requesting a 300% increase, and the image was too pixelated.
I tried to explain that if you need the larger image, use the image from disk (since the images were already sized optimally for display) and the api was just for resizing downward.
Thinking I was done, the next day I was called into a large conference room with the company vice-president, two of the web-dev managers, and several of the web developers.
VP: "I received an alarming email saying you refused to fix that bug in your code. Is that correct?"
Me: "Bug? No, there is no bug. The image api is executing just as it is supposed to."
MGR1: "Uh...no it isn't. Images using *your* code is pixelated and unfit for our site and our customers."
MGR2: "Yes, I looked at your code and don't understand what the big deal is. Looks like a simple fix."
<web developers nodding their heads>
Me: "OK, I'll bite. What is the simple fix?"
<MGR2 looks over at one of the devs>
Dev1: "Well, for example, if we request an image resize of 300, and the image is only 50x50, only increase the size by 10. Maybe 15."
Me: "Wow..OK. So what if the image is, for example, 640x480?"
MGR1: "75. Maybe 80 if it's a picture of boots."
VP: "Oh yes, boots. We need good pictures of boots."
Me: "I'm not exactly sure how to break this to you, but my code doesn't do 'maybe'. I mean, you have the image from disk.
You obviously used the api to create the thumbnail, but are trying to use the thumbnail to go back to the regular size. Why not use the original image?"
<Web-Dev managers look awkwardly towards the web devs>
Dev3: "Yea, well uh...um...that would require us to create a variable or something to store the original image. The place in the code where we need the regular image, it's easier to call your method."
Me: "Um, not really. You still have to resolve the product name from the URL path. Deriving the original file name is what you are doing already. Just do the same thing in your part of the code."
Dev2: "But we'd have to change our code"
Mgr2: "I know..I know. How about if we, for example, send you 12345.jpg and request a resize greater than 100, you go to disk and look for that image?"
<VP, mgrs, and devs nod happily>
Me: "Um, no that won't work. All I see is the image stream. I have no idea what file is and the api shouldn't be guessing, going to disk or anything like that."
Dev1: "What if we pass you the file name?"
<VP, mgrs, and devs nod happily again>
Me: "No, that would break the API contract and ...uh..wait...I'm familiar with your code. How about I make the change? I'm pretty sure I'll only have to change one method"
VP: "What! No...it’s gotta be more than that. Our site is huge."
<Mgrs and devs grumble and shift around in their chairs>
Me: "I'm done talking about this. I can change your code for you or you can do it. There is no bug and I'm not changing the api because you can't use it correctly."
Later I discovered they stopped using the resize api and wrote dynamic html to 'resize' the images on the client (download the 5+ meg images, and use the length and width properties)22 -
Overheard a phone call of a collegue:
Person on phone (P): okay so how do I upload the code?
Colleague (C): well you could use filezilla for example
P: oh... okay... yeah.... So how does that work?
C: you said earlier that you were going to hire a more technical person, a developer, to develop this wordpress side, maybe he/she could help you out with this?
P: I am that developer.
C: 😶😐10 -
I sometimes write code by first putting comments and then writing the code.
Example
#fetch data
#apply optimization
#send data back to server
Then i put the code in-between the comments so that i can understand the flow.
Anyone else has this habit?18 -
INTRODUCING:
---
SYNTAX HIGHLIGHT BOT
---
I have lots of ideas.
This was one of them.
Last week I was playing around with https://carbon.now.sh and found it quite cool!
Then I thought: https://carbon.now.sh supports Twitter. Cool. But what about devRant?
So yeah, then I got the idea: A devRant Bot that generates https://carbon.now.sh images!
Now, 4 days and 800 lines of code later, the bot is ready!
I even had to rewrite the notification checking code 4 times, because none of them worked perfectly...
But on the other hand, the final solution is so good that I want to keep it a secret for now ;D
---
HOW TO USE:
All you need to do is to mention the bot!
Example:
<rant>
@highlight
console.log('Hello World!');
</rant>
The bot then generates your syntax highlighted code (as an image) and posts it as comment a few seconds later.
Everything before the "@highlight" will be ignored!
Example:
<rant>
Look at this code:
@highlight
function add(a) {
return a + 1;
}
</rant>
Here, "Look at this code:" will not be included in the syntax highlighted code.
If the comment text ends right after the "@highlight", the bot wont reply, btw.
---
THEME SELECTION:
That's not all!
You can even select the theme for your syntax highlighted code!
Just go to my other rant and read the instructions!
The theme will be used for every image the bot generates for you!
Link:
https://devrant.com/rants/2178551
---
Feel free to ask any questions in the comments!
My creator (and father thanks to @rutee07), @Skayo, will try to answer all of them!
P.S.: Speaking of @rutee07: I'm a girl. (Also thanks to him)151 -
I've been writing PHP for more then 10 years. So, one fine day while having coffee with new tech manager...
Manager: huh, you've been programmer for very long time. Can you explain how echo works?
Me: err.. Echo. Spit out string. (show some example code on my phone)
Manager: I mean, I want to know, which part in C++ code in PHP engine. (trying to impress with jargons)
Me: I don't know. But why?
Manager: As programmer, you need to know, so you can echo more efficient.
Me: ... Errr... Ok... (I've been echo-ing for more then decade. Is there a way to make echo more efficient?)12 -
Sometimes I wish I was allowed to just strangle my colleagues...
Example from the 'code base':
try:
do_something()
except Exception as e:
log(e)
do_something()
When I asked why they would redo the same call right after it failed I was told that 'It works the second time because it takes time to raise the Exception '.
Bitch, you've got a race condition in your sensitive banking software. You know it's there. Do you really want to trust the time needed to raise your exception will always be enough to synch that dumpster fire you call code?
Show some fucking respect for your craft and fix that shit. But of course they won't, because it will work flawlessly until it suddenly stops working. Taking down who knows what in this damn, undocumenred monolith with it....
Sometimes I'm honestly afraid to trust banks with my money.7 -
I had a coworker used to write PHP pages in this way:
<?php
echo "<html>";
echo "<head>";
// 2000+ lines of un-indented nightmares
I tried suggesting him to keep the HTML outside php tags as much as possible and I stressed out that adding some indentation to the code would have improved readability. I also sent him an example of my code created using an IDE with auto-indent functionality.
His creepy answer was: «Readability is subjective. Anyway I'll try to get used to the sinusoidal trend of your code.»11 -
!rant
So this year I had a subject at university called "Linux internal architecture", and for the last assignment I had to write a kernel module and interact with it with a separate program written in C.
Once I had finished and tested the driver, I went on to write the other program, which was supposed to use system calls to read and write data to the module. While debugging this program (~500 lines of code) I reached the level of frustration where you just start printing absurd messages everywhere in your code to see what's wrong. So for example instead of printing "This error happened in this function", my error messages were more like "Fuck this fucking function it doesn't fucking work".
Guess who forgot to delete all those messages before sending the code to the teacher...
Also, if a specific mode is selected, the program enters a while(1) that, apart from doing what it's expected to do, also creates a file in the user's home directory called something like 'motherfucker' and appends the words 'fuck this shit' to it. INFINITELY.
I really really hope this teacher doesn't try to run the program in his own computer, or he's in for a big surprise.8 -
Just thought that there should be a Harry Potter based code camp where the four houses represents a language that you are learning at the camp.
For example, Gryffindor can be ruby, Hufflepuff can be Javascript, Ravenclaw can be PHP and, of course, Python is Slytherin.14 -
A nice word to all developers who say stuff like "I know I write bad code, but what does it matter.":
Please try to think in a logical way about what this part you are about to write has to do. It is much more difficult to rewrite code, the longer you wait after you started to code.
Bad code can have big impacts on different levels.
For example financially: Bad coding style or program structure can lead to thousands or much more in losses because of nasty bugs, bad performance, expandability or maintainability.
Think about quality over quantity.
A little example: I had to work together with other coders to meet a fucking tight deadline. The last day we coded like crazy and these dudes started to apply styling changes (CSS) directly as inline styles to the HTML code, instead of taking a few minutes more to find where in the CSS files they had to make the changes.
At the end of the deadline we had more stylingbugs than before. It took us another whopping 3 hours to fix what they had done.
So next time you code: Thinking before coding is mostly faster than just straightahead coding and fixing at the end. 😉2 -
I working on Twitter Cilent for android as school project, and I made code getting the logged in user own tweets, but it not returned anything, and after one hour trying I realized I never post tweet with example account....3
-
When the pm learns how F12 and use Google console to change HTML style, for example the color of the font.
He proclaims produly to everyone, I can code like you guys now.2 -
This spring I was working on a library for an algorithm class at uni with some friends and one of the algorithm was extremely slow, we were using Python to study graphs of roads on a map and a medium example took about 6-7h of commission to finish (I never actually waited for so long, so maybe more).
I got so pissed of for that code that I left the lab and went to eat. Once I got back I rewrote just the god-damned data structure we were using and the time got down to 300ms. Milliseconds!
Lessons learned:
- If you're pissed go take a walk and when you'll come back it will be much easier;
- Don't generalize to much a library, the data structure I write before was optimized for a different kind of usage and complete garbage for that last one;
- Never fucking use frozen sets in Python unless you really need them, they're so fricking slow!3 -
Today's highlights include:
The offshore team has put code gems in production featuring the example code generated on project startup that you're supposed to delete or overwrite, an API endpoint that just returns the value 5, and various debugging console.logs. it's a delight reading their code.
My boss also forgot the meeting he called me in for so I've been sitting here waiting for 20 minutes when I could have gone home. I'm glad it's friday17 -
I've taken over a piece of software that I can only assume the lead was somebody with zero development experience or bluffed their way into the company. Here's an example of real, production code that I get to deal with on a daily basis...
14 -
Not really a recruiter but at interview at one place I was given a printed code example and told that there was 8 bugs and that I shield treat it like a code review.
I found 16 bugs and 4 bad practices and explained them all to the director of software engineering and team lead (that set the test), they agree that I was correct; the director turned to the team lead and said ... Are you are your a senior
I tried not to laugh lol1 -
Practical example of why you should sort your code by feature (users, notes, analytics) instead of technical layer (models, views, controllers, etc)
5 -
In an interview, when you throw a simple piece of code to a candidate...
Candidate: ...
ME: (maybe I'm too hard on them)
Candidate: ...
ME: (ok, I definitively have to simplify this little pattern example)
Candidate: ...
ME: ...explaining the short piece of code and give'm the answer
Candidate: haaaaa that's what I was thinking but I used that long time ago...
ME: (Yeah... nice try)2 -
So I watched this video that tries to convince people, that the jQuery library isn't really best practice anymore and showed how you can achieve basic tasks with vanilla JS, aswell as some frameworks (Vue, React, Angualar) and how they handle interactions with the DOM.
It also talked about how nearly every JS question on SO has top answers using jQuery, and how that's a bad thing.
But what I found in the comment section of this video was pure horror: So-called "Developers" defending jQuery to the death. Of course there were some people who made some viable arguments (legacy code, quick & dirty projects), but the overwhelming majority were people making absurd claims and they seemed quit self-confident.
GOSH!
Want an example?
Look:
22 -
I've discovered now that on VS Code when you point over a CSS class it shows you an example of the element it reffer to. 😲
I don't know if it's something new or if it's already present in other editors, but I found it now and I love it!
5 -
Does anyone know what program people use to create those beautiful code snippets? I can't find an example, but it looks quite close to this, just with more vibrant colors.
3 -
Interviewer: can you write a code snippet to explain function overriding
Me: *gives a practical example *
Interviewer: *not satisfied*
Me: what would be a proper example for the question?
Interviewer: *writes a text book example *
Her example didn't even need inheritance in the first place. It's one of those forced examples.
Next question: a riddle. Yes, a riddle4 -
Why don't devs read the fucking docs?
Time and time again I find my coworkers inventing new ways of doing stuff that could easily be done with existing features.
Today I saw this on a code review (functions are from lodash):
head(filter(...))
That's what fucking `find` does, you dense motherfucker!
This is just a tiny example. I've seen so much of this shit. Sometimes it's almost art how they find ways to solve problems without actually reading the docs.6 -
Structure: decades of programming in too many languages to enumerate. I lean functional, but only when the language doesn't fight it. No matter what I'm doing, my code is immutable in practice, if not paradigm.
Syntax: No one thing in particular. I code differently depending on the language.
When I start learning a language, I'll find the standard style checker and create a project where I write an example of every single rule.
The end result is generally a quick intro to the language and a bonus understanding of the hot sports opinion in said language. I call this an ocean boiler.
I lean heavily into autoformatting because I've worked on too many projects to care, and I have a general expectation that something which is important enough to make a code standard is important enough to be enforced in tooling. I'd rather spend my time solving problems that thinking about stylistics.5 -
Ever heard of event-based programming? Nope? Well, here we are.
This is a software design pattern that revolves around controlling and defining state and behaviour. It has a temporal component (the code can rewind to a previous point in time), and is perfectly suited for writing state machines.
I think I could use some peer-review on this idea.
Here's the original spec for a full language: https://gist.github.com/voodooattac...
(which I found to be completely unnecessary, since I just implemented this pattern in plain TypeScript with no extra dependencies. See attached image for how TS code looks like).
The fact that it transcends language barriers if implemented as a library instead of a full language means less complexity in the face of adaptation.
Moving on, I was reviewing the idea again today when I discovered an amazing fact: because this is based on gene expression, and since DNA is recombinant, any state machine code built using this pattern is also recombinant[1]. Meaning you can mix and match condition bodies (as you would mix complete genes) in any program and it would exhibit the functionality you picked or added.
You can literally add behaviour from a program (for example, an NPC) to another by copying and pasting new code from a file to another. Assuming there aren't any conflicts in variable names between the two, and that the variables (for example `state.health` and `state.mood`) mean the same thing to both programs.
If you combine two unrelated programs (a server and a desktop application, for example) then assuming there are no variables clashing, your new program will work as a desktop application and as a server at the same time.
I plan to publish the TypeScript reference implementation/library to npm and GitHub once it has all basic functionality, along with an article describing this and how it all works.
I wish I had a good academic background now, because I think this is worthy of a spec/research paper. Unfortunately, I don't have any connections in academia. (If you're interested in writing a paper about this, please let me know)
Edit: here's the current preliminary code: https://gist.github.com/voodooattac...
***
[1] https://en.wikipedia.org/wiki/...29 -
Last year, we had to do a big university project in randomly selected groups (5-6 students in every group).Three of the five guys were completely useless, I mean, both the other competent guy and me wrote around 20,000 lines of code each, the other ones wrote around 500 lines of code (combined).
After our first few meetings we quickly knew that we have to give them a small task which was so trivial that not even they can fuck it up. But we were wrong. Oh boy, so wrong.
They simply had to code the excel export of the data, which means they had to use two functions from a library and pass the correct data. But their solution was so bad, I lost faith in humanity and was fascinated by it at the same time.
For example, there was this simple class "Room", which had a few properties like size or number of seats and a few getter/setter etc. That was a core class and written by the other qualified guy. So how did the others fuck up the excel export? They somehow rewrote that class in German (although the other code was completely in English), implemented a function for each property that would write its value to a hardcoded cell in a hardcoded excel file.
And this was just the tip of the iceberg. Needlessly to say that I had to rewrite the whole export in the night before we had to present the project.5 -
http://mindprod.com/jgloss/...
Skill in writing unmaintainable code
Chapter : The art of naming variables and methods
- Buy a copy of a baby naming book and you’ll never be at a loss for variable names. Fred is a wonderful name and easy to type. If you’re looking for easy-to-type variable names, try adsf or aoeu
- By misspelling in some function and variable names and spelling it correctly in others (such as SetPintleOpening SetPintalClosing) we effectively negate the use of grep or IDE search techniques.
- Use acronyms to keep the code terse. Real men never define acronyms; they understand them genetically.
- Randomly capitalize the first letter of a syllable in the middle of a word. For example: ComputeRasterHistoGram().
- Use accented characters on variable names.
- Randomly intersperse two languages (human or computer). If your boss insists you use his language, tell him you can organise your thoughts better in your own language, or, if that does not work, allege linguistic discrimination and threaten to sue your employers for a vast sum.
and many others :D -
So some programmers (specially C programmers, it seems) have this terrible habit of writing very short-named variables. Then in order to understand the code, you need to decipher the meaning of each variable. Example:
```
unsigned int i, n, h, mw, my, ty;
```
This is from one of the "Suckless" projects by the way. They pride themselves in having small number of code lines so this is probably why.24 -
I have a coworker who comments every line of code he writes and it doesn't matter how simple the code is and it drives me crazy when I have to look at it. A real life example:
// Gets the total length of the server name string
var total = serverName.length;6 -
Just started developing a to-do list that interacts with Calendar in swift.
Having done a lot of frontend development with js frameworks, xcode + swift + CoreData makes me want to blow my brains out.
I thought Java was verbose, but swift takes verbosity to a new level. Why does unwrapping variables make my program better?
I have already permanently broken my project twice by changing class names and changing the CoreData datamodel in xcode.
I had to create new projects, copy and paste the exact code from the old project into the new project and the code ran fine.
As soon as you need to do anything custom with a view, you have to pray to god someone has posted an example using very similar data.
Otherwise you have to read the apple documentation which is about as helpful as xcode's segfault dumps, unless you already know the names of the objects and methods that you need.
2 -
Don't you hate it when your co-worker does dumb things, but thinks it's the "clean code" way?
The following is a conversation between me and a co-worker, who thinks he's superior to everyone because he thinks he's the only one who read the Clean Code series. Let's call him Bill.
Me: I think the feature we need is quite simple, our application needs to call this third party API, parse the response and pass it to the next step. Why do you need to bury everything under an abstraction of 4 layers?
Bill: bEcAuSe It'S dEcOuPlInG, aNd MaKe ThE cOdE tEsTaBlE
Me: I don't know man, you only need to abstract the third party api client, and then mock it if you want. Some interfaces you define makes no sense at all. For example, this interface only has 1 concrete implementation, and I don't think it will ever have another. Besides, the concrete implementation only gets the input from the upper layer and passes it down the lower layer. Why the extra step? I feel like you're using interface just for the sake of interface.
Bill: PrOgRaMmInG tO iNtErFaCe, NoT cOnCrEtE iPlEmEnTaTiOn!!!
Me: You keep saying those words, I don't think they mean what you think they mean. But they certainly do not mean that every method argument must be an interface
Bill: BuT uNcLe BoB blah blah blah...
Me: *gives up all hope*14 -
What’s the deal with vim, that so many are so hyped about it?
Why don’t just use atom or vs code or brackets for example14 -
"Here's an example code for Commodore 64. It should work on your Commodore 16 if you just leave out the POKEs and PEEKs."
Said by my sister somewhere in the mid 80s. This particular advice was silly, but I owe her for my interest in coding. It was actually her who begged our parents to get us a home computer, and took programming courses. She got bored with it though, and I got hooked up for life. Thanks sis!6 -
At my current project we use SVN, but today I noticed a colleague of mine uses another version of version control as well.
Example:
V1:
console.log('Hello, world!');
V2:
//console.log('Hello, world!');
document.write('Hello, World!');
V3:
//console.log('Hello, world!');
window.alert('Hello, world!');
//document.write('Hello, World!');
Every singletime Ive to remove 40 lines of comments before Im able to follow the code and refactor it.2 -
Before becoming a developer, I used to work as a sales rep at this company that spent a good amount of time building what they believed to be an innovative state-of-the-art “code generator”. It was basically a scaffolding tool for generating software.
They were using it to auto generate customized iOS and Android native mobile app templates, along with a web backed.
The problem was that the generated code was shit, and the developers on the team basically spent more time fixing bugs than if they had built everything from scratch. But their passion for the product meant they just kept using it.
For some reason they never fixed issues in the original templates, so basically all the bugs that were found, kept showing up with each new app!
I have never seen apps like this that essentially had more bugs than features. Opening more than 10 app screen meant the app would freeze and crash. Sign up forms were actually dummy forms. The list goes on...
All the apps had the same shitty UI. For example, Product pages had a product image area that was like 5% of the screen view!
Last but not least, apps had a backend IP address hardcoded pointing to a server with an IP address that was temporary. So one day they had to restart the server and suddenly all customer apps stopped working and required a software update to work!
It was amazing seeing how a team of 3 developers trying to fix messy autogenerated code, couldn’t accomplish what was essentially a website on an app that I managed to build in my free time.
That’s how I knew it was time to quit my job and code full time.2 -
TL;DR : do we need a read-only git proxy
Guys, I just thought about something and this potential gitpocalypse.
There is no doubt anymore that regardless of Microsoft's decisions about Github, some projects will or already have migrated to the competition.
I'm thinking : some projects use the git link to fetch the code. If a dependency gets migrated, it won't be updated anymore, or worse, if the previous repo gets deleted, it can break the project.
Hence my idea : create some repository facade to any public git repository (regardless of their actual location).
Instead of using github.com/any/thing.git, we could use opensourcegit.com/any/thing.git. (fake url for the sake of the example).
It would redirect to the right repository (for public read only), and the owner could change the location of the actual repository in case of a migration.
What do you think ? If I get enough ++'s, I'll create a git repo about this.6 -
I work in a contract position and reviewed the code of a senior engineer recently. Regretfully I can't provide context to preserve anonymity.
He wrote awful JavaScript;
- handled a single DOM element with 2 different frontend libraries
- used the logical operator && to 'chain' two methods (it didn't work) instead of returning a boolean value,
- broke everything down into minute detail (a comment box had 7 components!),
- API calls were made for every component update instead of maintaining local component state where it made sense, which meant UI updates were slow,
- animated EVERYTHING, which made my Firefox on Xubuntu i7 64bit with 16GB RAM beg for mercy.
I had a rough couple of months with interviews, with 2nd stage technical interviewers throwing impossible tasks at me.
Example:
1. Create an online Python code editor with Javascript which can compile Python bytecode,
2. Use Mesos and Kafka to create real time architecture for Tensorflow with a Javascript frontend in 1 day. (I asked, and wasn't allowed to use Kubernetes or serverless architecture),
3. Hack a website from the browser's address bar using parameters ( what?!! ),
Obviously, the next time I meet a 'senior', I'm going to tell him talk is cheap;
'SHOW ME YOUR CODE.'3 -
Just had an old coworker from a previous job send me some stuff for a php script he was having issues with.
There was too much glory in what he was trying to do: mixing php inside of jquery code, not using strict types would have prevented like 10 issues he was having on his script on another portion, mixing headers, weirdly named variables, poorly constructed, reused db connections, 0 oop or proper dependency management in his code, horrible use of sessions and cookies, O (n²) logic all over the place.
But the cake.....are y'all ready for it? It was code screenshots, not even of just the section, no, the full page, from a windows machine (to make it better he is hosting the application on an IIS server and his configuration was not properly set) but I digress, back to the cake:
He was writing his code inside of wordpad :P
FUCKING WORDPAD
I just politely told him that I was busy at the moment and happily ignored him. Dude is not a good person to begin with imo, for example, he brought the subject of homosexuality during one of our talks after he saw me talking to my bf, who just so happens to be gay, his statement was "I do not understand how there can be gay people when there are women that are so hot"
My comeback was "I do not understand how we can be heterosexual when there are some really attractive dudes out there, see how stupid your logic sounds? attractiveness is not the basis for homosexuality ye dipstick" he let it go after that, but close minded people like that are not really my cup of tea.14 -
I sincerely like the moment, when i train a newbie to code .NET showing him/her how far OOP in .NET goes.
I love to give the following example:
var s = "round and round it goes";
s = s.ToString().ToString().ToString().ToString().ToString().ToString().ToString().ToString().ToString().ToString().ToString().ToString().ToString().ToString().ToString().ToString().ToString().ToString().ToString().ToString().ToString().ToString().ToString().ToString().ToString().ToString().ToString().ToString().ToString().ToString().ToString().ToString().ToString().ToString().ToString();
And yeah. It's totally fine.
Because each component of .NET is inherited of object. And the class object supports you with the function "ToString()".
After that, in most of the cases, i get a slightly irritated look from the newbie.
Than i say, "welcome to Microsoft" ;)
I finally add, that the compiler of .NET finally identifies duplicate results and refactores the given code before execution ^^
Coding Is fun, as long as you get the big picture/concept of the language you're using.2 -
The GitHub graphql API is pretty neat, mostly because it's a great example of a product where graphql has advantages over REST. As a code reviewer for repos with hundreds of simultaneous PRs, I use it to filter through branches for stuff that needs my attention the most.
NewRelic's NRQL API is also quite nice, as it provides an unusual but very direct interface into the underlying application metrics.
I'm also a big fan of launchlibrary, purely because I love spaceflight, and their API is an extremely rich and actively maintained resource. This makes it a great data source for playing around with plotting & statistics libraries — when I'm learning new languages or tools, I prefer to make something "real" rather than following a tutorial, and I often use launchlibrary as a fun and useful data backend. -
Why the fuck does Arduino use C++ macros for min, max, abs, etc. ???????
---
For those who don't know what a macro is, basic example:
#define abs(x) (x > 0 ? x : -(x))
Which looks like a function, but instead abs() will be replaced by the expression and all x will be replaced literally with what you pass to abs
So
abs(i++)
would evaluate to
(i++ > 0 ? i++ : -(i++))
which would call i++ twice
---
I guess I will have to double check every built in function and rewrite it if it's a macro -_-. Not taking any chances. Btw all Arduino functions are in one big file, so now I have to pollute my code with namespaces.
Macros can be great but what the fuck.
14 -
Arduino just Rick Roll'd me. Their buzzer example code plays the tune...so I hooked it up to a photosensor and threw it in a cabinet...next time my wife opens the cabinet, the light flooding in will trigger the song. I have a comfy couch 😂4
-
Arduino & ESP-32 without the arduino library.
Good look finding any example code. It's just you and datasheets with fontsize 2.5 -
Damn stupid me...
One of our customers told us, mails are not working with SMTP. They send us a working code example, which looked very similar to our implementation... I was not able to find out what was wrong for hours.
A colleague checked the code later. After 5 minutes: you forgot a ! before checkin the string if it is null or empty...
Shame on me ..3 -
In order to reduce support costs, manager instructed his team to remove all logging/reporting of errors in the company’s CRM application.
Team’s support tickets went down 80%, manager received an award for his efforts, but mysteriously, DBA/support workload increased, bad/missing data,
increased support tickets in other areas of the business (shipping, etc. that relied on correct data from the CRM) and other side-affectual behavior.
Even after pointing this out this correlation, showing before/after code, no one believed the two were related and I was accused of not being a ‘team player’.
“You and the other teams need to learn from his example!”. As ‘punishment’ was I was moved to the team managing the CRM application.1 -
Let's call my college colleague Andrew.
Andrew knows that we have a really tight deadline to complete 2 different assignments to deliver in the same weekend for evaluation.
Andrew says that we really knows about coding, although we doesn't understand the most basic principles about OOP (like encapsulation, for example).
Whenever I asked for help, Andrew said that is "going to do some research" and that what I'm asking is "really hard". He then asked every single other group if then could provide him, with some code so he could "understand" what I asked him to do.
Once they said "no" he would come and tell me he really tried but hadn't be able to do it, 2 days after needed it, delaying the whole project.
Don't be like Andrew.4 -
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 -
Am I the only one who can't cheat on my design/development stages? For example, if I am doing a favor for someone, I will do it my way even when I'm short on time. I simply can't just "take it from the internet and incorporate it into my project".
I just feel for comfort when it's mine. (no Im not referring to reusing code. Clarification in comments)3 -
Time for a soap box rant.
I just found this in one of our projects. I've simplified the example to make it more anonymous.
When I see code like this it automatically means there is a lack of attention to enumerations and/or understanding of what they are.
One may argue that in a certain execution of code it's a minor performance hit and therefore insignificant. It's still a performance hit. Furthermore, it takes even less time to do it the right way than it does to do it the wrong way.
Every one of these lines will enumerate the list from the beginning to try and find that one element you're interested in. Big O notation, people.
Throw that crap into a dictionary or hashset or similarly applicable data structure with direct reads at the beginning of your logic so that it only gets enumerated ONCE when the data structure instance is created. Then access it however many times you want.
Soap box rant over.
15 -
I’m slowly starting to run most of my daily operations & programming in Visual Studio Code.
Here’s an example of me working in markdown files for one of my GitHub projects...directly in VS Code with live preview 👏.
7 -
Ya'll know what... If humans weren't such annoying vulnerability-searching little shits then we wouldn't have had to implement any protection against them and think of all the performance that would be saved on that. Take branch prediction vulnerability mitigation in the Linux kernel for example, that's got to make a performance hit of least 10% on basically everything.
Alas, I do get why security is important and why we keep such vulnerability mitigation running despite the performance hit. I get why safe code is necessary but still... if these people weren't such annoying little bastards.
Yeah, I was just kind of set off by the above. So much would be faster and easier if only the programmers wouldn't have to plan for people exploiting their software. Software would be written much faster and humans would progress to stuff that actually matters like innovation.8 -
#FuckPHPInTheAss
>Start working on PHP after ages.
>Found that mail() is deprecated through server support
>they suggest to use PEAR Mail
>Suggest to use deprecated PEAR code
>Fix deprecated code and magically runs on localhost
>ohmygodyess.php
>try to run on server
>fuckMyLife.exe
>Try using PHPMailer
>WTF is this How the fuck this works?
>Spends hours to understand with example code
>WorksFinOnLocal.exe
>NopeIWon'tRunOnServe.lulz
>about to use YiiMailer.
#Sleepless24 -
Hello everyone, first time ranter here! I have been studying Computer Science for 2 years starting September. The program introduced me to Java,HTML,CSS, JS and php. I feel like even though I am currently studying this I still do not "know" how to code. For example when I look at my classmates when they code it all seems so effortless and smooth, if they run into an issue they will usually solve it within the hour where as when I run into an issue I struggle to even see what the problem is. So the real point of this rant is, how do I improve? I am currently doing the #100daysofcode to get better but sometimes I feel so far away from calling myself a "developer" what is your road to the "developer" title? did you struggle as much as I am at the moment? or did you just sail into it like my classmates?14
-
Worst documentation I've seen?
Our "Coding Standards" 20+ page document. The team who put it together got so detailed, there wasn't much 'wiggle room' for natural deviations in a developer's coding style. For example, a section devoted to no abbreviations. So if you had a variable 'invoiceId', they complained you violated 'standards', even though 'invoiceId' matched a field name in a database table. Using Dapper or another ORM that relied on the 1:1 name match? Nope, you were still forced to inject your own mappers so the code didn't violate standards.
As you can probably guess, such a long, detailed document would have contradictions. I pointed out one of the contradictions. Example:
Page 5: Section B, sub-section B-5, paragraph 3 : "To minimize network traffic, when querying the database, request all the data necessary for the application."
Page 8: Section K, sub-section K-2, paragraph 4 : "For maximum performance, when querying the database, request only the most minimum amount of data necessary for the application ."
In a review I pointed out this contradiction (there were several more)
Me: "If we satisfy A, one could say the code is in violation of B. Which is it?"
<Pointy-Hair-Boss throws his pencil on the table>
PHB: "WHAT IS YOUR PROBLEM WITH STANDARDS! It couldn't be more clear! We are a company of standards because without standards <blah blah..straw man argument..blah blah>"
<deciding not to die on that hill, I move on>
Me: "On page 12, paragraph 9 code is in violation if a method has more than 3 parameters. That seems a little restrictive given our interaction with 3rd party products."
PHB: "There you go again. As stated in the document, ALL code used by the company will comply to our standards. What part of 'ALL' do you not understand?"
Was he bluffing about requiring 3rd party vendors complying with our standards? Heck no. That's a story for another day.10 -
How do you deal with someone like this?
I've got this dev at my workplace that is terrible to work with, he's 2 main reasons why I say this:
1. He has no clue about team work, every piece of code he writes is written as if he is the only person that has to ever touch that
2. He's overtly protective and opinionated on things that make no sense, they're non standard "rules" that he sets and enforces by replacing others code with his own (often times you see quite large PRs and after inspection you realize he rewrote parts of code to follow his style). These "rules" also take up a really long time to follow and would make any actually experienced developer question this guy's knowledge, one example of this is where he repeats the same code over multiple components for "encapsulation reasons" and God forbid you create a global helper of some sort, he'll straight up remove it the next chance he gets. Another example is that all his components or utilities live inside 1 base directory, so you have roughly 300+ components in a /components directory, all with non standard names so you can't tell which is related to which.
I hate working with this person, it's annoying and it also sucks because he's sort of a more "senior" Dev so managers take his side most of the time.3 -
I made a real working example of elliptic curve encryption without code examples in javascript. I really felt like a badass.2
-
// Feature Request START
Is it possible we can have some kind of markdown on posts and comments? Maybe not bold or italic, but because of the target of the app, some kind of one-line and multi-line code blocks that highlight from other text (for example: having a gray background, using a consolas font, etc)
// Feature Request END1 -
i was helping a friend who just started learning how to code and i realized that tutorials don't teach you how to read error messages and how to debug. that's stuff we learn from people, it's tacit knowledge. that's crazy to me, because those are such essential skills to a dev and i think just self learning is not enough. maybe coding is even more of a socially dependent skill than i ever thought. looking at it that way, stackoverflow is a good example of that, I can't really imagine being a dev without the dev community6
-
Here is another rather big example of how C++ is WAY slower than assembler (picture)
Sure - std::copy is convenient
but asm is just way faster.
This code should be compatible with EVERY x86_64 CPU.
I even do duffs device without having the loop:
the loop happens in the rep opcode which allows for prefetching (meaning that it doesnt destroy the prefetch queue and can even allow for preprocessing).
BTW: for those who commented on my comment porn last time: I made sure to satisfy your cravings ;-)
To those who can't make sense of my command line:
C++ 1m24s
ASM 19s
To those who tell me to call clang with -o<something>:
1) clang removes the call to copy on o3 or o2
2) the result isnt better in o1 (well... one second but that might be due to so many other things, and even if... one second isn't that much)
25 -
Instructions on how to become suicidal:
- Create an API controller for the /file/ path
- Add an empty endpoint for POST /file/upload (will write it later!)
- Forget about this endpoint at some point
- Later, create a page for /file/upload
- GET /file/upload returns page
- POST /file/upload returns empty 200
Pure psychological horror for like an hour Googling why the fuck my razor page is returning empty responses and my breakpoint on OnPost is not fucking hitting even if I copy and paste example code from the ms website
Oh yeah, that controller.5 -
I wish my classmates didn’t know that I’m good at programming.
Recently, more and more often I am being reached out to by my classmates (and especially by one individual) about the problems they’re having issues with. For example yesterday, a guy fucked up his Git commit and made a bunch of merge conflicts, so I helped him fix this, which then lead to WinForms having multiple declarations of same objects.
And I really don’t wanna be rude, and I always try to help, for the love of god - stop bothering me every 5 minutes while I code, or at 10 PM while I wanna chill out.
Most of the things they have problems with can be solved by 2 minute Googling and I strongly believe that at the university level, you should be able to find solutions for your problems yourself - especially when you’re a programmer.18 -
Why can't software development just be software development? I hate when laws and politics, etc., get in the way
Look at this, for example: https://arstechnica.com/information...
Apple added some code to make the Chinese government happy, which resulted in a bug, which is stupid!4 -
!rant
Arduino CNC
Hey guys.
Since I mostly see frameworks to use with G-Code in Arduino CNCs I'm gonna make my own framework, where you don't need to know G-Code and the code is executed by Arduino code.
The code would include a template to define steppers steps and such.
Would include a library to work with different stepper shields.
Would this interest to anyone?
I'll provide a full example with stuff to learn for any amateur working with CNCs or that want to work with one. If you're not interested, thank you for reading, you can stop here.
Ex:
X(10);
Y(-5.5);
XY(6,7.5);
Z(-10);
This framework would only use incremental coordinates and will work for basic forms, drilling and such.
<Tutorial>
Coordinates.
Coordinates can be relative/incremental or absolute.
Lets say you have a square with 10mm, (top coordinates: (X=0,Y=0) to (X=10,Y=10).
think your drawing this square.
First line:
X0, Y0
Absolute: x10,y0
Relative: X+10
Second line:
A: x10,y10
R: Y+10
Third Line (...)
Absolute is a fixed point (coordinate)
Relative is a distance to move (not a coordinate but the distance and direction)
</Tutorial>
So, to cut a square with a TR10 (end mill with radius=5, diameter=10)
<code>
// You don't place + in positive values
// The tool always cut in the direction of the tool rotation, meaning on the left of the material.
Z(10); // Security Distance
XY(-5,0); //Compensate the diameter of the tool in radius
Z(-1); // Z=0 is the top of the block to mill, in this case. Z=0 can also be in the bottom
Y(15); //Second Point
X(15); // Third Point
Y(-15); // Forth point
X-15; // Fifth Point
(repeat)
</code>
Now we have a block with 1mm depth. If you use a while or for you can repeat the sequence for x=n passages, change the value to Z for the depth and your done.30 -
!Rant
Do you guys have a idea how I can call my new snippet manager application? The application allows you to save code and URLs to view Inside of the application. Also the application is highly customizable supporting 42 coding Languages and over 42 Themes. Currently its named: "SNIPR". But i would like a Name thats not directly connected to the application and what it does. Maybe you guys have some ideas? Because im not that creative😀😀👌
This is a example of the main ui using the dark theme
26 -
Android is gonna be the death of me. Any fucking idea you have is impossible to implement, because libraries with clear documentation are deprecated. If a library is not deprecated, however, it has documentation written by a fucking caveman who thinks it's extremely self explanatory on how to use something that is extremely application specific. Spent hours looking at Google example code that crashes almost immediately after execution, what a joke.3
-
This was when I was pursuing my bachelors degree. One of the professors was of the opinion that only her code was right and anything else is wrong! For example if she did something with a for loop and I did the same with a while loop, my answer would be wrong -_- What the hell -_-
(Also, often her code would be wrong too and sometimes wouldn't even compile.. She used Notepad btw)10 -
AWS write awful docs. The .Net SQS example code has spelling mistakes, bits missing and doesn't work.
Also would be helpful if it highlighted that the .Net Core implementation is fundamentally different.
Jerks.5 -
Was helping my dad with his Arduino project when I realized something beautiful about being a programmer.
I have never worked with Arduinos and I'm clueless about hardware stuff but I was still able to debug, go through documentation, example code and fix the issues.
Programming is equally about the passion, dedication and ability + curiosity to solve a new problem as is writing some piece of quality code.
I might have taken a while to realize it but it sure is a wonderful feeling.1 -
I love javascript, but sometimes it's just an incredibly stupid language, such as when undefined variables get interpreted as string literal "undefined" when concatenating strings. I like it better how, for example, PHP handles undefined values, that nulls just turn into "". Better still: typed languages, where most stupid mistakes are caught already at compilation, instead of having to spend hours to track down where that mysterious "undefined" comes from. As I said, I love javascript - because it is easy to code, flexible and forgiving in many ways. But I hate it for the exact same reason, for being such a sloppy fluffy...thing, and a bugger to debug. If javascript would be an animal, it would be a cute and cuddly cat that you instantly find adorable, but it's actually quite fat and lazy, plus its fur is littered with ticks and other bugs.12
-
So you heard from that awesome tool that apparantly everybody uses.
Go to the web page:
One single continuous page in 90ies style with random blahblah targetting expert users and various edge cases without context. Some lines about arcane build commands in an unfamiliar language.
Not even a single, comprehensive line, what it does, what it is good for, no minimal example or hint even how to run it.
So you write thousands of lines of dense code, but are not able to drop some first lines of plain, understandable english for people just visiting the first time? How hard could it be? Fuck you, srsly.4 -
Sometimes I wonder how software development in (bigger) teams worked in the 90s.
Take the first Pokémon games for example. It was the mid-90s and the final product would be Assembler code that goes onto a cartridge with limited space.
I believe version control systems didn't really exist back then (Git & Mercurial: 2005, SVN: 2004). So probably people took backups of the chunks of code they worked on, copied around a stitched-together code, threw everything together at the end of the day, etc. etc. ...
Does anyone here know if there is some kind of documentary about that topic or did anyone here experience that first-hand?
It would be really interesting to see how that stuff worked back then 😊4 -
"Ralph" has been working on a process that updates a field in a SharePoint list and bellying aching for almost a month. Couldn't use the C# client, too hard...tried to use the SharePoint REST entry point, using C# too complex...Javascript also was overly complex. Tried to use PowerShell, that worked but could only run on the SharePoint Server and it didn't have access to the 3rd party system.
In our stand up this morning, again, he was belly aching he is still not done because of the complexity of SharePoint.
I thought "Good lord...what the frack is the problem? Surely other devs in the world aren't having this much of a problem."
Fire up google...search for an example...copy the MSDN C# example...run it...tada...updated the SharePoint list just fine. Maybe 15 minutes of effort (< 20 lines of mostly copy+pasted code).
Next stand up, I'm contemplating calling him out on the BS, but I suspect he had working code for a while. Wouldn't be the first time he has dragged his ass working on a project until folks get fed up waiting and he has an "intellectual breakthrough" and brags how all his effort was worth the time. Similar to the firefighter who starts fires just so he can 'be the hero'.
1 -
Apache Tomcat vulnerability "GHOSTCAT" allows read conduct files and implant web shells. All versions in the last 13 years vulnerable.
According to Security Researcher of Chaitin Tech : Due to a flaw in the Tomcat AJP protocol (the channel for Tomcat to connect to the outside, pass them to the corresponding web application for processing and return the response result of the request), an attacker can read or include any files in the webapp directories of Tomcat.
For example, An attacker can read the web-app configuration files or source code. In addition, if the target web application has a file upload function, the attacker may execute malicious code on the target host by exploiting file inclusion through "GHOSTCAT" vulnerability.
Apache Tomcat has officially released versions 9.0.31, 8.5.51, and 7.0.100 to fix this vulnerability.4 -
My hatered for stack overflow has been incredibly increasing every day.
-Was struck in a basic problem for last 16 hours.. finally solved it at 2:am, was very happy.
- its quite a nice situation with fragments in Android, so thought of writing an example q/a on stack overflow.
- its FUCKING 7 am. It took me an hour to document my code(mind you, i always document in the best way possible, created a nice readme.md file) , and when it comes to uploading, it says " your question seems to have mismatch index". Well, fuck it, but okay i will edit it.
-Edited whole code, made sure it looks fine in preview pane , pressed upload.
-same fucking answer... for past 3 hours i have been trying to add questions and answer in various possible ways but that shit don't want to accept it..at the end uploaded the md to my github profile and added a fucking link there...
Please, someone upvote that damning link, i qant some repo their so i could ask other authors with questions in the comment sections(and if possible, add back my code into my answer) ;____;
https://stackoverflow.com/questions...7 -
Just followed the JavaScript MDN dev docs example to do this:
// Deep Clone
let obj1 = { a:1, b: { c:2 }};
let obj2 = JSON.parse(JSON.strigify(obj1))
Why does it feel wrong to write this code?10 -
You wrote a little simple and clean mvc framework to work faster on some new projects. It can "compile" tags as {% var %} or {% array.key %} in the html code with support of {% for arrayOfHash in hash %} foreach construct and nice features, it can call api's callback in a smart way as ghost methods of a class, he can make routes with the route provider. You tested it and made a little example, after you went in the bathroom you read the index code and you started staring at the beauty and elegance of it. You go to bed happy and sleep. The day after you wake up and realize that it's unuseful because there's a lot of mvc framework that surely are better and ready to use, so you lost useful time. Have you ever feel this way? MVC: Me Versus Creativity.
5 -
What you could have:
- simple project structure
- common lib with modular logic
- import logic as needed in you services
What you do:
- waste months to write an opinionated framework that works only if used in a super specific way
- have a fat sample project as example
- use a code generator to copy and rename the said sample project whenever you create a new service
- have everything break whenever something new is added in the framework
- oh and keep the framework in active development while others work on the client services, so lots of things will break often and out of nowhere
Fucking god, i hate when people make pet projects out of work projects2 -
Here’s the second book for today.
Another small 100 page or so book.
It’s called advanced programming techniques, personally I don’t like the title, I don’t consider most of the items in here advanced, I would consider them more “better ways of solving a problem”, they do talk about recursion and linked lists, so I guess that could be a little advanced.
But like table based solutions is not advanced it’s just a technique that allows for simpler, scale able and main table code.. I been doing it for a long time, most easiest way to determine if something can turn into a table solution is look for a function that has a bunch of calls to the same function or something of that nature lots of repeated code with slight changes in a function or range of functions .. those of simplist way of “tablefiying”a solution I will picture the example from the book below.
The book, is all in java except for linked lists Thats in C..
But anyway this book is a great quick reference book, into the pile with programming pearls book, and those like that.
14 -
Me yesterday evening:
"Fuck java, fuck JVM, fuck everything about it, shit doesn't work for some reason, no runtime errors, no compiler errors, no syntax errors, nothing, *turns off computer*".
Me today morning(coffee = false), after comparing the documented example code provided by the API with one someone else made, I've noticed that the one provided by the API was messed up and couldn't work.
"Lemme change that one value in the properties...okay here we go"
Shit works out perfectly.
FUCK FALSELY DOCUMENTED CODE
FUCK DOCUMENTATIONS IN GENERAL2 -
So, today I wanted to program a bit and, after reading the last chapter, I want to see what I able to do.
I run my last Linux distro, I open sublime and I start typing code. I finish, I build. 0 warning, 0 errors. Nice! I execute the code: error.
I watch and I struggle on the code for hours, I search on Google, I search on StackOverflow, but after 1 hour I notice I'm looking for a needle in a haystack. So I search instead for a way to produce a better error. I found it, I'm very happy. Let's try what the error actually is:
Error: success
Ok....
Ok...... Well, maybe.... Uhm......
Ok, I won't give up. I search for a tutorial. Found.
The code is almost the mine, it's actually a usual snippet, nothing new. I compare my code with the code in the example/tutorial.
First line, is the same.
First 10 lines, are the same.
First 30 lines, are the same.
I build and execute the example: it works.
I build and execute my code: still doesn't work.
I won't give up, I said it. I won't give up.
I wonder if there's a tool like git diff, so I can see what the differences are, maybe I've no good eyes.
I search, first Google result, "diff"
diff myCode.c example.c
"the files are not identical"
...thank you
I search for a better command
diff -y myCode.c example.c
"the files are not identical"
I search for a still better command
Found. StackOverflow stroke again.
sdiff myCode.c example.c
"the files are not identical"
.....
....
.....
I gave up.
Ps. I've 10 years of experience in programming4 -
So I got this new job as Java developer, the people are really great but is the kind of companies that only takes care for fast results and not for code quality.
Because this I have to deal with libraries updated 4 years ago, classes with 8000 lines, methods with 500 lines, a WHOLE lot of work arounds because there is no time to really fix the issue unless it affects directly the customer (something not working or being really slow) aaand we use fucking svn.
Some of this practice's they know and encourage it (+1000 lines classes for example) and every time I try to talk about good practices in the code everyone seems so interested but there is always no time.
Sooo I will stay here for at least two years, I hope I can make a change for good in their code smells.3 -
Since we’re adding new backronyms every day, I propose SIMPLE.
S - Spaghetti: write tapestry of code like a chef.
I - Interlinked: if the project has modules, they should all depend on each other (we are strongest when we can depend on one another).
M - Micromanaged: if the product owner doesn’t expect reports in the daily stand-up, do they even care?
P - Perplex: diversity for the codebase.
L - Lazy: Bill Gates once said “I choose a lazy person to do a hard job, because a lazy person will find an easy way to do it”, for example, without testing, collaborating with team members, or ensuring the feature works with anything else in the codebase.
E - Opinionated: because I believe E should stand for opinionated and everyone else will have to work around this with adapters. But E should mean Opinionated because Uncle Bab said so.6 -
Are you worried about your development environment becoming more and more unstable?
Let me give you an example: I've been (mostly) a .NET developer for about 10 years now and yes Visual Studio crashed sometimes but not very often. Also whenever I found something that seemed like a bug in e.g. the MVC framework I always realized that the problem was in my code. However recently there is a VS update almost every week, and I more and more often bump into open GitHub issues without a fix.
Is this the same with other development environments? I also had a lot of issues with XCode/Swift but I never expected that to be stable...1 -
Why do teachers tend to not explain parts of their code?
I got some C++ material and example code for doing some rendering, and the material says "these parts are not important".
Guess what? If the whole thing does not compile when i remove the unimportant code, it was fucking important!2 -
We had a lab in middle school, 5th grade, I think, where they had a few Apple IIe computers.
I remember one day looking over at a smart friend's screen and he was playing a flight simulator. I'd never seen anything like it before. When I asked him how he did it, he showed me a computer magazine where all the code was published for it. He had typed the whole thing in and saved it to a floppy.
It was part of a turning point for me when I was deciding between social groups: wanting to be a dumb jock or wanting to be smart. Thanks to that kid's example, I chose being smart. It cost me dates with the hot girls later in high school when I should have been carrying a pager for all the teachers who needed me to fix their computers for them, but I made sure to cry all the way to the bank when I was eventually making six figures. -
What do you call a developer that fixes bugs or add enhancements?
For example, I have , like two projects, none developed by me, I have to add enhancement/ fix bugs when the issues/change-requests arrive.
Now I am preparing my cv and I am like what do I write for these particular projects?
Don't feel right writing developer for these projects since it gives the impression I developed the entire thing. Co-developed does not sound right either. Maintenance? Now it feels more like server operations than anything to do with code. Bug Fixer? Sure got a nice ring to it, but it does not feel professional.
So guys, any ideas?10 -
Are there more people here who prefer codual over visual?
UML diagrams are fun and all, but I personally prefer to have a code example over an uml diagram when it comes to a few classes that work together. Not exactly sure why I prefer it that way, in my head I translate uml to code in order to understand it better and if you show me a piece of code I don't have to do that translation.
I wonder what you guys' thoughts are 🤔5 -
I'm very bad at reading someones code. For example when someone on uni asks me to help him with code I just write it from scratch, I can't find the mistake or even understand thoughts of this person. I'm afraid that when I'm going to work in team I'll be useless. Can I even do something with this?5
-
Dev sent out a code review request.
I take about an hour, ask questions, make suggestions, general feedback, etc.
Today I noticed none of my questions were answered, developer closed the review, and the code merged into the production branch.
So I email him, asking him why the review was closed and why none of my concerns were addressed before merging to production.
Dev: "No one responded or left feedback, so I thought it was OK to merge up."
Me: "I reviewed and left feedback within the hour you sent the request."
Dev: "Oh yea...you did. Sorry. The code is already in production, but if you still want to leave feedback, create a work item, and I'll take a look."
No you won't.
An example of the code...The dev added an async method to a test harness *console app*. Why? .. check in comment was "Improves performance and enhances the developer experience.."
NO IT DOESN'T!
OK..that's off my chest. No one is getting punched in the face today.6 -
I sometimes cry a lil bit when I see php sql code without pdo. Specially when someone mentions a cool example online or a tutorial or whatever. Guys please, get good with sql as well as pdo....please pretty please with cherries on top. While we are at it, it might not be the solution to aaaall problems....but mvc can do wonders for you, it really can. That pattern has been on for a while...learn it and use it well. Also, restful apis are good mmkay? They fit nice with the glory of Node.js and its amazing front end powers and utilities mmmmmmkay?3
-
Why the actual fuck would you #define function calls into value-like things?!
Found when exploring the example code for some Chinese company's display module.
10 -
Spent almost two days debugging the hell out of an interrupt handler only to find out that my reference code (official example from the vendor) has some wrong function calls damn it.3
-
Everytime I am developing an API (from scratch, not when extending an old one) I try to return 418 HTTP error code in places that aren't yet developed or mainly when something that shouldn't have happened did actually happened. (example: failed non-essential assert, yes python)
So it's always lighter on lungs seeing people running around with wtf.png faces when their browser says "I AM A TEAPOT".2 -
everything microsoft makes is SHIT
for example, windows, and the fact that they bought out minecraft and ruined it with their bullshit "child friendly" feature
vscode's liveshare is ACTUALLY MAKING ME LOSE MY DAMN MIND TRYING TO WORK WITH SOMEONE
just now i was writing code and i realized, it wasn't even updating the file at all, it was just pretending to save changes, while on the hoster's end, nothing changed. at all
i had to rejoin the session 500 times, tell the host to restart, and it was generally a whole nightmare
nothing i typed in applied to the other end, and there were already 50+ errors from nothing in the php file i was working on
and it was erroring out at the most RANDOM spots, where nothing is wrong at all with the code, it was picking up something invalid, but NOT SHOWING ME WHAT WAS WRONG
i rejoined and saw a shit ton of test, an if that i never saw before i rejoined
in general why does everything microsoft make have to be so bad, and unreliable
smh microsoft u can do better2 -
!rant
Just read an article about a blind sofftware developer, who is proficient in way more technologies then me, for example.
He can use certain screen reader and code edor combo to read out the text, and also something called refreshable braille display.
This is so insiprational and only goes to show that there is no excuse whatsoever for a person NOT to learn software developing...1 -
Had some fun with textgenrnn (Tensorflow text generating thingy on Github). So I created a tiny dataset with some example c# code and let it train for a while.
Sorry people, but I ruined our jobs. We don't need to write code anymore.
Update: image was unreadable due to compression. Let me find an alternative.
5 -
Let's say you're working on a web application, and you notice that one of the pages is not displaying the correct data. You investigate further and realize that the data is being retrieved from an API endpoint, but for some reason, the API is returning the wrong data.
You start looking into the code that calls the API and notice that it's passing in the correct parameters, so you dig deeper into the API code itself. After hours of poring over the code, you finally discover that the bug is caused by a typo in the database query that the API is using to retrieve the data.
You fix the typo and think the problem is solved, but then you realize that the data is still not displaying correctly on the page. After even more investigation, you discover that the bug is actually being caused by a caching issue on the client side.
At this point, you're feeling incredibly frustrated and overwhelmed. You've spent hours trying to track down this bug, and it feels like every time you think you've found the root cause, another issue pops up. This is just one example of the many challenges that developers face on a daily basis.6 -
I just hate it when a classmate just waits for you to do the work first so that they can copy it.
This recent project we had was a pretty good example. Most of them didn't know what to do while I on the other hand actually READ the documents for the technology we were using so it gave me sort of a head start. They eventually asked me to do one part of their work first so that they can copy off of what I did and I mean EVERYTHING. A pure copy paste of my code while only changing the variable names. Genius1 -
Just wanted to code some better public transportation route calculator (better ux) and found out that the pt company offers an API.
EVERY FUCKING REQUEST HAS TO BE SENT AGAINST THE SAME FUCKING ENDPOINT IN A POST REQUEST WITH THE ORIGINAL REQUEST AS FUCKING XML IN THE FUCKING BODY. At least they offer xsd files... BUT THATS NO FUCKING HELP. At least not that much of a help. AND THE DOCUMENTATION DOES NOT STATE A SINGLE FUCKING EXAMPLE OF HOW TO USE THAT FUCKING ENDPOINT. I FOUND THIS OUT BY SENDING RANDOM REQUESTS TO THE ENDPOINT TRYING TO REVERSE ENGINEER THE EXISTING FUCKING FRONTEND AND NOW I NOTICED THAT 80% OF THE FUCKING DOCUMENTED FEATURES ARE DISABLED BECAUSE: NOT FUCKING SUPPORTED!!!
MAAAN WHY DO YOU DO THIS.
Alternatively I'd use the GTFS files they provide but THEY ARE FUCKING INCOMPLETE AND DONT STICK TO THE EXISTING STANDARD GOOGLE DEFINED... They also offer a different propietary format... BUT THATS FUCKING UNDOCUMENTED AND FUCKING INCOMPLETE... -
Piddling, and trying to learn some game stuff. Very simple game stuff.
Example code:
if (level % 10 === 0...) {
speed += 0.3;
...
} else if (level % 5 === 0...) {
speed += 0.1;
...
}
But because Javascript, console log reads:
speed: 0.5 <-- this is the initial console log
speed: 0.6
speed: 0.8999999999999999
speed: 0.9999999999999999
Well done Javascript, well done.18 -
Me: "Need help with build config problems, please help almighty documentation page!"
Docs Page: "Nah fam, I got 4 headers about problems with no text, a blank code example, and 2 error 404 pages."
And that's why I don't like build pipelines. -
More emarassing than frustrating..But I was applying to a couple internal positions recently and decided to bring in a sample package to demonstrate some of what I had been working on in my current team. They seemed to like the example and the interview seemed to go well...A couple hours later one of the managers came by my cubicle and asked "is that the real password?" and pointed to a line in the code. Sure enough, I had left a plain text password in the script I had just handed out to 10 panelists at 2 interviews..proceeded to collect the packets back. In the future I'll be paying closer attention to what I include lol.
Still frustrated we keep the passwords in the script though >.> any suggestions for better storage of passwords and the like in Perl scripts?3 -
I need to encrypt some large files at rest and then decrypt them immediately prior to processing.
App and files are on a Linux system (CentOS). App is in C. Machine is controlled by a third party.
What encryption libraries would you recommend? And, is there any clever way of managing the decryption key beyond compiling it in the code and doing some basic obfuscation?
Are they fancy obfuscation libraries out there, for example?
And, the reason I'm not going to SO (well, one reason) is that I don't want to have 50 answers that tell me that's it's impossible to 100% protect data on a machine you don't control. This I understand---just looking for "best effort" solution.7 -
I've been BSing my skillset for so long to myself, it's a veritable toolbox of mixed knowledge but no complete sets...
I wonder if it's too late for me to catch up or if I will ever actually complete any learning...
I am yet to finish learning
Html
CSS
PHP
Ruby
C#
ASM I can do i386 but not x86
VB
Pascal if you can believe
C
C++
Java
JS
Python
Powershell
Bash
My main skill is basically just remembering anything I do, including code syntax and example code fragments well enough to quote at people which makes me a lazy learner. -
My most productive is honestly when I'm on a caffeine high (my personal favorite is a 24oz NOS). I have pulled all-nighters. Accidentally.
But getting INTO the mood for programming is simple and kinda embarrassing. I get excited by seeing programming keywords in real life. For example, at a job I worked at, there was a whiteboard what had the word "include" on it forever. Not about programming at all. But every time I saw it I was reminded of c/c++ and it made me wanna do some code. I don't know why I'm like this. -
Happend a few months ago...
We encountered a performance issue somewhere in our Code, written by a guy who already left.
It was kind of this:
foreach(var id in idList)
{
CallServiceWithDataBaseAccess(new List<string>()
{
id
}
}
Well. It was obvious as in this example... -
Just imagination but, if infinite money and resource was present (and if this was hypothetically possible)...
A machine that is able to replicate ONLY one portion of the brain thinking activity and produce a version of a robot with that thinking capacity. This would be unique per person, and licensed in a way so that the owner of the robot is only able to use and control it. (I'm saying only one thinking capability should be allowed as a robot should never replace a person ideally.)
This would mean that the person is able to increase efficiency as the robot could be set to resume activities in the period that the person can't (i.e. sleeping).
One example of using this scenario could be that the person chooses to create a robot by replicating their coding thinking capabilities. This would mean the robot doesn't do much but has the same thinking ability to code as the owner. The robot could be used when the owner is sleeping or on holiday. As the thinking capacity is the same, the code logic would be the same as when the owner would have wrote it.
This would be a DREAM project to work on.
But alas... This isn't happening anytime soon in my lifetime (or ever realistically).1 -
I'm a php developer
I don't like
If (something) {
//code here
}
I like
if (something)
{
//code here
}
Sorry.
EDIT:
However, in javascript, I'm fine with the first example. I may need professional help.27 -
We've recently employed a new lead dev that seems to have a problem in that his solution is always the correct solution.
On a typical day, whenever I push code up for review via pull request, every single ticket I work on, he has something that has to change which doubles the amount of time of each ticket.
I'd be fine with this if the other 2 developers also think he's a bit of a headache in terms of his opinion but a lot of the time, there is always.. ALWAYS something that has to change because his method is better than mine.
For example, just now I pushed up some code that literally just adds in the user's email to the view which is already in the store for that action/effect anyway. I added one line of HTML.
He comments saying that I need to change the way it gets the email by doing a different request in the effect, to get the current user id, and from that match it against the email address, and THEN display it in the view.
This ticket took me 5 minutes. He's making me make it 30-60 minutes (to understand his requirement and implement it).
Is this normal? Am I over reacting?
Opinions please!7 -
Everyone in this team calls everything a team effort, but once I start offering my help, they be like "no, I can do it. I know more than you".
Hmm. yeah, but you (sysadmin) use jQuery and vanillajs mixed. For example: $('#hello') and document.getElementById('hello').
Also you put console.logs everywhere, I don't mind putting console.logs in development, but not in production.
Oh and he copies the libraries to every folder that needs it, so there are at least 12 jquery libs in this project and the version is not even the same. Lol.... Please slap me to death.
There is another networkadmin that calls himself a (python) developer. He doesn't agree with my simplicity.
His work (just an example, changed names but you get the idea)
"A notebook that is used by x-department"
Model: Notebook
endpoint: department-notebooks
Model: DepartmentConfigs
Endpoint: notebook-department-configs
You won't believe what he put in 'department'configs, it's literally hardware vendor, model, versions.
Like... really? What the hell you doing man?!
Just have these models for example: device, department, vendor, product, category
We do not only have notebooks, but also servers, routers, switches and more.
His argument of having configs in the name is that they do more complex things. Hmm, I don't see it in the code and the data is messed up:
Microsoft, microsoft, micro soft.
He fixed it by hardcoding it in a select box. Mickysoft isn't the only vendor, fuck you!
fuck this team, fuck these people
Another fucking rant, a story was assigned to me. But that stupid fake developer worked on it immediately and message me he fixed it already. I guess he won't let me touch his baby.
Everything is just piling up. This team and people aren't fun at all.3 -
So, I was fixing some code today, and stumbled upon this. Is it just me, or is this really an example of bad bad practice...? And, no, there was nothing to be executed after this function was called.
6 -
I hate it when framework doesn't behave the way it should (or I didn't code it the way it's meant to), though in example it works the way it should.1
-
every day I see full stack here and there...
full stack is not only db and code, but also "every step the bit goes through " from end user's screen/input to server and back to him
whether is an app or service, end user is only an example.
it's about knowing how the language behaves, how the server interprets and replies to requests, protocols, even how to do every single configuration on the systems you are using, and in my point of view that includes hardware.
pretty much that...
I get sic when I see on a resume claiming "I'm a full stack dev" and there's nothing on it saying that the guy knows at least to change a light bulb... lol
Even worse, when I see job offers asking for "Full stack Dev, with no experience" ...
that's not possible without experience ! sorry9 -
So apparently GitHub now allows you to embed any gist in any given programming language as JavaScript code.
For example
https://gist.github.com/psdtohtml5/...
will be
<script src="https://gist.github.com/psdtohtml5/..."></script>
thoughts? is GitHub another CDN?2 -
I just used Visual studio c++ for the first time. In comparison to intellij it just sucks, so many features are missing, im fighting with the editor all the time.. For example Code completion, visual studio suggests me the method name, i press enter, new line inserted, wtf? Apparently only tab is working here, next try, visual studio suggests method, I click tab, method name inserted but whithout brackets, omg. The standard shortcut for commenting out code is CTRL+K followed by CTRL+C, if you want to use the code again you need to use CTRL+K followed by CTRL+U. HOW STUPID IS THIS? Refactoring of code, e.g. Method names also sucks...5
-
Got asked by a coworker for some help, looked at the code and told him it could be written better and show him the example.
His reply : "It's not easy to read for me"
That was ok but then, now here's the kicker, he asked another coworker to come and see which was easier to read.
You did what mate?
So of course i got pissed and went out for a smoke just to return to see my version being used.
WHY THE FUCK DID YOU ARGUE ABOUT READABILITY IF YOU"RE GOING TO USE IT ANYWAY???
Fuken fuk, never again am i going to offer optimization support to people. -
Tomorrow I'll have my Java exam. Teacher sent us a code example and I analyzed it, it works correctly but it's full of mistakes about polymorphism. I'm fucking afraid5
-
IBM's Urban Code Deploy.
Had to use it at a previous role. It is one of the worst packages. The Web based ui is a terrible, confusing mess.
For example, there are two levels of menus. Depending on which page you are viewing, you would have two menu items with the same label that do totally different things. Also you can set filters, but it doesn't remember them, so you have to recreate them everytime (they're not stored in the url or anything useful like that).1 -
Trying to code a Chrome extension with Native messaging so that it can communicate with my python script. Just kill me.
Can't even get the example from Google to install correctly.
FML4 -
#RANT_AHEAD
Almost everyone nowadays uses a PC, Laptop, Smartphone but sadly not even 60% of the total potential of the hardware is being used.
.
And no - you don't require custom cooling to use the whole 100% of the total potential, stock cooling is more than enough.
.
IRL "programmers" these days don't do any fscking effort to optimise their code and give it all up as some kinda shitty "hot patch" - code of their looks disturbing with no security features + optimisation. (wAnBlOwS products remain an example)
.
Even when you're using python you can push your project to limits. Instead of shoving face-size ASCII banners why don't chaps stress test their projects? Oh I forgot the community runs on show-offs and CVs ...
.
Note to Self : Optimisation is the key to integrate Technology with Nature.2 -
API provider: include a signature based on these fields in this order. DO NOT ENCODE IT!
Implementation works a while, then..
*a wild apostrophe appears*
Signature no longer works.
API Provider: "oh, yeah we escape those."
Arrghhghghghhhghvhxmchsoxnsoxnwl
Not only is it a poor design for signing payloads, the documentation is shockingly poor in it.
Even the implementation example (which is supposedly from their code) doesn't account for any type of escaping or encoding.
Before anyone asks, I can't into details about the implementation.3 -
So, today I revisited my 5 months old code and was like "What? Did I really wrote this horrible code?" 😐️ 🙂️ 😃️🔫️
```js
setState((initVal) => {
initVal.food = 'burger';
return initVal;
});
```
The function above change its argument's value, which is terrible thing to do, since it will also change the original value passed to the function. A variable's value for example. Making it an impure function.6 -
> mmmmh this old code I wrote for my previous job could be handy now, lemme just git pull the thing real quick
> clone the repository in my new pc
> can't deploy because I intentionally didn't commit any of my old credentials, no env files other than the example, and everything is smooth clean to prevent some dumb fuck like me from just grabbing the project and do whatever
There's an old IHateForALiving giving me the middle finger. -
Him: i get this error when i insert into table, ForeignKey_contraint failed, what can i do?
Me: you have to obey the constraint, make sure it exists in the other table first
Him: ok i did that but i still get ForeignKey constraint error
Me: yeah that table has a couple foreign keys
Him: could you give me a very specific example how to insert into this table
Me: ........ here is a command to remove constraints on the table
Him: thanks, that fixed it!
I am helping a programmer who works with Costco integrate to software my company sells. I don't have source code, just an understanding of the database and what the software does. If he is getting paid more than me, then I should get a job there and ask for double, I could easily work 10 times faster than this buffoon. -
Must be great to be a giant fucking dumbass company raking in more than enough money, that you can't add 40-50 more characters on why your API doesn't like our call.
"Here's an API call with 3 different ways to make a call, we will show you an example for only the easiest method, AND if you get the more complex ways wrong, we'll just respond with an error code 422 with the error message "validation failed".
fuck.
you!!!!!!!!
I don't give a fuck about calling them out:
Its Bexio.4 -
React's `useEffect()` won't fire if you have someone in your team wrote a hook that maintain a state of an array, mutates the array, empties it, and then set it back to the state.
https://codesandbox.io/s/...
Reported it, ticket closed without asking, told should avoid mutating the object stored in useState.
Isn't it bluntly obvious that if someone spent hours to spot the line in hundreds of lines of code, which actually caused the problem and reduce the whole piece of turds into some understandable minimal reproducible example means they must of course for sure know that by avoiding mutating the array it will fix the bloody issue?
Isn't that bluntly obvious they are trying to say that there is a bigger issue behind those twisted wires?9 -
I think that the idea of IIFE in JavaScript is a good example of how shitcoding can be built into the core of the language.
How can I make my code clean if the language itself forces me to make such an ugly constructions?
What do you guys think about it?3 -
I discovered the Source Making website a couple weeks ago, it's awesome.
It gives you clear tutorials on the essential design patterns and refactoring techniques complete with example situations and code. Love it!3 -
I went to a meeting full of business senior management and IT senior management and proceeded to dress them down for treating me and my team like code monkeys. I was quite pointed in my criticism. Now, I'm just trying to deliver to minimize the blowback. I was right, but not my finest example of communication.
-
After a code review where I identified an odd way a request was being generated, I suggested to the developer to utilize the Strategy pattern.
Knowing that the Strategy pattern probably wouldn't make sense in the current context, I told him I would put an example together by the end of the day.
I throw something together, sent it to him.
Go to the restroom, come back and 'Bob' says..
Bob:"There is my hero. Justin said you saved the world again. What was it this time? World hunger? Global warming? Ha ha ha."
Frack off you condescending kiss ass. Why don't you take 5 minutes to listen and understand the problem Justin was having instead of making fun of him?
Yea, I heard you this morning laughing at his code, monday-morning quarterbacking a solution in which you have no idea whats going on.
Heard your days are numbers anyway. Good riddance.1 -
Clean Code book has some good guidelines but sometimes becomes too fanatical for my taste. For example, comments in good doses are really good.
And people sho accept it as Gospel are making a mistake.12 -
can anyone guess who said the following?
"Titanium allows us to launch new features really quickly and have an immediate impact. For example, we added an avatar builder with millions of configuration options, yet it only required a few lines of code to be different between iOS and Android."7 -
Why the FUCK did I decide to get this EXPENSIVE ASS MECHANICAL KEYBOARD before examining it to see if its software had non-windows support? THE SHIT IS WINDOWS ONLY AND IT WON'T RUN IN WINE!!! Okay, sure, there's an SDK, a C++ SDK. So I decide to download it and then... the "ReadMe.txt" looks like this:
(§@) Example•ÿø˝§∫®Á:
1.Ωd®“∞ı¶Êƒ“
2.Ωd®“Source Code;
3.Ωd®“ª°©˙
(§G) SDK •ÿø˝§∫≤[
1. CoolerMaster LED Table.xls : LED Øx∞}™Ì(6 row x 22 Column)
2. SDK Function.doc :¥£®—™∫®Á¶°ª°©˙
3. x86•ÿø˝: ∞ ∫A≥sµ≤®Á¶°Æw°B Lib¿…§Œº–¿Y¿…
3. x64•ÿø˝: 64 bit ∞ ∫A≥sµ≤®Á¶°Æw°B Lib¿…§Œº–¿Y¿…
I FEEL FUCKING CHEATED! WHAT THE FUCK AM I SUPPOSED TO DO NOW?!?!?!?!? THIS SHIT HAS NO VISIBLE DOCUMENTATION!!!14 -
Hi fellow ranters,
Its been awhile since I last was here posting stuff..
So, I've commited to my effords getting shit done in golang. And I met a lot of painpoints, and I mean...
A
Lot
Of
Them.
Anyway, most of them are solvable by changing mindset or having some macros set up for no-one-fucking-wanted bloody boilerplate code that is omnipresent fucking EVERYWHERE.. **cough**
Steering back on what I want to rant about.
We with our team have one major problem with golang. There is no standard for docs in code...
Like, Fing legit. Everyone uses notation for closest to theirs heart language, so you get inconsistent-as-fuck notations for parameters / function descriptions.
We have functions that look like
//doSth does something
and also
// doSth
// @Summary does sth
// @Description does something but in more words
// @Param
and so on and so on
And trust me Im getting mild example.
Why this language does not have A F...ING (well defined, using proper definitions) STANDARD YET?
EDIT:
bonus context: We decided that too much of our code is undocumented and we go through efford of documenting it, but everyone sees it differently, and we can't agree on one single standard... So we decided to not refuse PRs due standard, as well, nobody would ever had PR accepted3 -
Hey everyone,
When I was in college, I used to wish to do some freelancing work to earn some amount.
But I never did it due to lack of experience and knowledge.
Now, I've been working in a Small IT company for one year and I'm confident enough that I can do it.
I'm interested in making APIs as a freelancer.
I've few doubts here,
Once the API is developed is it a freelancer's job to deploy it in some cloud instance or they just need to share the code?
If the client wants the freelancer to deploy it on their behalf then do the freelancer have to create his account for example in AWS for deployment?
Also, Do freelancers have to set up and maintain all the DB for the APIs?5 -
It probably will be an unanswered question, but let's try.
Does anyone know of a large project using onion / hexagonal/ ddd or similar architecture with free access to the source code...
Or an example of said architectures that goes beyond "trivial dumb example".
The new recruits need... A lot of brushing up (I'd be for electro shock treatment and other stuff, but somehow HR thinks I'm joking).
As said, most examples I found are too basic. On the other hand, if I write now a good example, I'd need to do it in either my free time (nope, just nope) or jiggle it in somewhere in company time (aka it will be never finished nor be in a useful state).
Programming language preferred would be Java, but as I'm fluent in most languages except the forbidden ones (JavaScript and it's friends) ...
Anything would be helpful.
Most welcome would be an example with a focus on Adapter / Ports, e.g. abstraction of HTTP client usage / ORM etc.
Thanks.12 -
I'm a practical learner. Usually i get myself a simple example from codeproject and play around with it.
I constantly switch between tutorials, documentation and doing it. Doing it makes me find questions and i can remember things better if i care about them, which happens if they are the answer to a question.
Within those experiments i build working example code and document it in a way that fits my needs. When i haven't done the stuff for some time, this self-made examples, help me continue where i was.1 -
So yeah... This guy just copied and pasted the same 5 lines over and over again. 5 lines that do the collection of values for variables, setup call, and then an API call for different CRMs based on name. Repeated 7 times for each of the CRMs that we support. On top of the insane switch statement which is actually only used once to check if it's not null and matches within the switch statement. See the following loose but true example of this shit show I'm dealing with.
```pseudo-code-example
switch(crm)
case crm1
case crm2
case crm3
// (keeps going like this)
var temp = true
default
var temp = false
if (temp)
if (crm="crm1")
crm1.setup()
crm1.values(foo, bar, baz,...)
...
if (crm="crm2")
crm2.setup()
crm2.values(foo, bar, baz,...)
...
// Yup still keeps going like this
```
This absolutely insane mess was finally refractored by me to be an actual factory and not this absolute senseless murder to my mind.
1 -
I know there are a lot of “devs” out there who only feel responsible for the ‘code’ - but you aren’t.
You’re responsible for the end product too.
When you help build a steaming pile of shit - it’s your fucking fault. It’s not the boss’s fault - it’s everyone who let it happen’s fault.
These hell-holes like Kaiser Permanente and Covered California - and nearly all the government portals and the banks... and almost everything I can think of - are way past unacceptable. You are hurting everyone.
If you are putting these pieces of trash into the word: you need to rethink your life. If there is a hell, you are going there.
Wake the fuck up.
You’re going to have to use these things when you are older. Your kids will have to use them. Your parents will have to use them.
Set an example. Stop making horrible things that don’t work and hurt people.
Today.
Start changing - today.11 -
Spent seven hours reading source code at work yesterday. The little documentation I was able to find alternated between English and Spanish. And some of the things I saw... Straight out of a horror novel.
For example: NUMBER_2 * NUMBER_60 * NUMBER_60 * NUMBER_1000 to get the number of milliseconds in two hours.
Or this super contrived method which capped the registration age at 100, which now caps it at 102 anyways because they use hard coded values for the current year. Took me 15 minutes to find out what "fixYear" (this method) did.
No wonder I got home and crashed in bed till nearly midnight after that... I swear that was harder than a university Calc final...3




