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 - "fp"
-
windows update code
function update(){
print("10%");
print("30%");
print("50%");
print("99%");
_doActualUpdate();
_mineBitcoin();
print("100%");
return;
}15 -
Googles best javascript framework.
1st link: react is the best one.
Me: Ignore
2nd link: Angular is the best one.
Me: ignore.
.
.
.
8th link: Vue is the best one.
Me: I knew it.18 -
Meme intended for physics, but sometimes it also happens in progamming. I am looking at you Javascript.
Source: https://theladyscientist.tumblr.com/...4 -
Functional Programming literally has 'fun' in the title; OOP is one letter away from 💩. I rest my case.5
-
Interviewed a dev for a junior role earlier this week...my first question:
const numbers = [0.1, 0.2, 0.3];
let sum = 0;
for (i = 0; i < numbers.length; ++i) {
setTimeout(() => {
sum += numbers[i];
}, 0);
}
// Refactor the preceding code so that the following returns true.
console.log(sum === 0.6);
---
He had no idea where to even start, so I asked him to walk through the code with me line by line, he couldn't get past line 1 - literally didn't know what an array was... I walked through the code with him and he just started to look more and more lost.
I didn't even bother with the rest of my questions on OOP, FP, etc...
Am I really expecting too much of somebody that claims to have 2 years practical experience in JavaScript, jQuery, Angular, and PHP?
Do you think this is a problem a junior dev should be able to solve...even if it takes some hand-holding?57 -
The best minds of my generation are thinking about how to make people click ads…That sucks.
- Jeffrey Hammerbacher, former Facebook engineer1 -
Lol 😂. I was expecting a mnemonic of some kind but this works too.
https://stackoverflow.com/questions...2 -
Once I used to wonder how youtube made money.
Now every time I watch a youtube video I am reminded how.12 -
Submitting long written text on browser.
Novice:
1. Type
2. Submit
Experienced:
1. Type
2. Ctrl+a Ctrl+c
3. Submit4 -
Don't get me wrong, I like funcional programming, but this smug „This would neeever happen with FP“ bullshit really gets on my nerve and kind of turns me off the idea of ever wanting to work with FP programmers.
It's just another paradigm, it's still possible to write unmaintainable fuckugly crapcode with functional programming.
And it is still very possible to write beautiful, clean, well maintainable code with OOP. Get over yourselves and understand that it's a tool and not a religion, and a good dev should know when to pick which tool for which job without childish notions of intellectual superiority.4 -
Pair a FP programmer with an OOP programmer for nine months and they will give birth to a whole new level of procrastination.3
-
draw.io is moving to diagrams.net, because .io domains are not secure.
Source: https://diagrams.net/blog/...12 -
What the fuck has one of my clients been up to?! Every request he makes he suggests we might want to do it via a function.
"We need to ensure this is password protected. Maybe wrap the calls in a function."
I wander if he goes into the bakery and says, "I need a loaf of bread---use flour."
All I can think of is that someone influential in his life is an FP zealot and he's latched onto this word.
But, I quite like FP. Maybe I'll refactor everything to static classes to meet the requirement.
Hope to Christ he doesn't find out about HTML, etc. "Maybe add a CSS rule."8 -
I hate this work from home shit with your family around. "You're always in front of the computer, go workout, go socialize, its family time"
What part of "work from home" you don't understand. SMH!9 -
One of the biggest barriers to the wide(r) scale adoption of functional programming languages like Haskell, F#, and Scala is how snooty and condescending your average FP developer is. And beginner-unfriendly.
Ask them a question about an intermediate topic (in my case, the Free monad) you're likely to get a whole torrent of category theoretic rubbish in return.
This is a common pattern I see when "experts" answer questions.
Now, it didn't bother me much because I've studied a fair amount of category theory and can usually follow such answers, but, for the sake of the general case, I'd like to shove these rules into the heads of everyone writing an answer to a question (not just FP):
1. If you can't illustrate a concept clearly without going into verbal diarrhoea with phrases like "monad homomorphism" and "just a monoid in the category of endofunctors" then you clearly haven't understood it properly (unless, of course, the answer absolutely requires it). An answer is not the place to show off your knowledge of a topic.
2. Please remember that everyone was a beginner at some point. Including you. Understand that some concepts can be extremely frustrating at first and yet incredibly simple after you grok them (eg. monads).
3. If the person asking the question is a beginner, using complex concepts in an answer just because it's a more "elegant" way to explain it doesn't really help them. They are more likely to get confused and drop the topic.
(Kudos to those people who give highly relevant, insightful, simple, and intuitive answers, you guys are the best).2 -
It's truly amazing how much a single line of perl can do. Such a time saver.
I only wish that I could understand what it does two days later.1 -
Dear Chrome/firefox developers,
If someone presses the back button after they click on a link it means don't load that page and not go back to previous page.4 -
Definitely Rust, and a bit Haskell.
Rust has made me much more conscious of data ownership through a program, to the point that any C/C++ function I wrote that takes a pointer nowadays gets a comment on ownership.
I wish it was a bit less pedantic about generics sometimes, which is why I've started working on a "less pedantic rust", where generics are done through multiple dispatch à la Julia, but still monomorphising everything I can. I've only started this week, but I already have a tokenizer and most of the type inference system (an SLD tree) ready. Next up is the borrow checker and parsing the tokenized input to whatever the type inference and borrow checker need to work with, and of course actual code generation...
Haskell is my first FP language, and introduced me to some FP patterns which, turns out, are super useful even with less FP languages. -
"I'm almost done, I'll just need to add tests!"
Booom! You did it, that was a nuke going off in my head.
No, you shouldn't just need to add tests. The tests should have been written from the get go! You most likely won't cover all the cases. You won't know if adding the tests will break your feature, as you had none, as you refactor your untested mess in order to make your code testable.
When reading your mess of a test case and the painful mocking process you went through, I silently cry out into the void: "Why oh why!? All of this suffering could have been avoided!"
Since most of the time, your mocking pain boils down to not understanding what your "unit" in your "unit test" should be.
So let it be said:
- If you want to build a parser for an XML file, then just write a function / class whose *only* purpose is: parse the XML file, return a value object. That's it. Nothing more, nothing less.
- If you want to build a parser for an XML file, it MUST NOT: download a zip, extract that zip, merge all those files to one big file, parse that big file, talk to some other random APIs as a side-effect, and then return a value object.
Because then you suddenly have to mock away a http service and deal with zip files in your test cases.
The http util of your programming language will most likely work. Your unzip library will most likely work. So just assume it working. There are valid use cases where you want to make sure you acutally send a request and get a response, yet I am talking unit test here only.
In the scope of a class, keep the public methods to a reasonable minimum. As for each public method you shall at least create one test case. If you ever have the feeling "I want to test that private method" replace that statement in your head with: "I should extract that functionality to a new class where that method public. I then can create a unit test case a for that." That new service then becomes a dependency in your current service. Problem solved.
Also, mocking away dependencies should a simple process. If your mocking process fills half the screen, your test setup is overly complicated and your class is doing too much.
That's why I currently dig functional programming so much. When you build pure functions without side effects, unit tests are easy to write. Yet you can apply pure functions to OOP as well (to a degree). Embrace immutability.
Sidenote:
It's really not helpful that a lot of developers don't understand the difference between unit, functional acceptance, integration testing. Then they wonder why they can't test something easily, write overly complex test cases, until someone points out to them: No, in the scope of unit tests, we don't need to test our persistance layer. We just assume that it works. We should only test our businsess logic. You know: "Assuming that I get that response from the database, I expect that to happen." You don't need a test db, make a real query against that, in order to test that. (That still is a valid thing to do. Yet not in the scope of unit tests.)rant developer unit test test testing fp oop writing tests get your shit together unit testing unit tests8 -
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 -
If we are living in a simulation then I am pretty sure that the quantum mechanics part was written in javascript.3
-
I would like to share my gum collection at work. I like chewing something. I bought all of these though. We dont have free food in our work.19
-
When left hand feels itchy because you may have copied something a bit ago and never pasted it, but now you don't know what or why3
-
WOW!! What a fucking cop out. After what happened yesterday about branching. my senior and our boss had a meeting and I wasn’t included. My senior then message me to next time dont create another branch just use the existing branch even if it was merged. I said “ok but i thought thats the best practice, we we’re doing that since the beginning”. Senior then responded “Whats best practice for our boss, that will be our best practice” what a fucking cop out!!! Bitch!!23
-
I FINALLY comprehend list comprehensions.
I can write an unlimited amount of nested loops on a single line and make other less experienced people hate me for fun and profit.
Also learned about map() #I hate it#, zip(which is awesome), and the utility of lambdas (they're okay).
Enumerate is pretty nifty too, only thing I lose is setting the initial value of the iterator index.15 -
Woke myself up shouting hdcp at 4:40 am today!!!
I was explaining what hdcp was to my sister in the dream, why the HDMI cable wouldn't work..
Had a chuckle and continued to sleep, realizing what a nerd I am 😆
Who dreams about hdcp and hdmi cables?4 -
First day at work, my PC starts updating, reboots and suddenly, the boot partition is corrupt.
Nice way to start in Dev.3 -
Companies! For the love of your peoples sanity give the developers of all ages worthwhile machines. If you send us to clients to develop iOS apps, send macs also 😤4
-
Buys a product on amazon.
"Intelligent" ML based Amazon backend services: This guy just ordered a product. He might not want to see any ads showing him the exact same product because he already bought it and will not want to buy another until he loses the first one which might take a while.
Result:
User.showAdsRelatedTo(productName)
Meshine learning ¯\_(ツ)_/¯7 -
Dev.to app asks me to type in my github username and password into the github login page opened in their app. Is there no better way to do OAuth on Android apps?8
-
"What are the four pillars of OOP?"
Me:(I'm not an OOP guy, but focused on design patterns)
1. Encapsulation
2. Abstraction
3. Polymorphism
4. ??(was it inheritance or composition).
Fuck, Because of the phrase "composition over inheritance". I've been mixing both composition and inheritance at the same time.9 -
Flex + CSS grids is awesome. I know I am late. I regret not realizing this earlier. Way earlier.
Someone who does not agree with me please read this: https://css-tricks.com/snippets/...4 -
Me: ill use media queries to make our site responsive (site is not responsive before i got here)
Me: code ...
Me: code ...
Me: done, created a PR
Senior: review... removes all the code and media queries and said. We dont have to use media queries because bootstrap is already responsive.
- BULLSHIT! We still need media queries!!!!!27 -
!myrant
I'm a junior developer in a small company alongside with a fellow programmer. Since I have an interest in Security and our Sys Admin left, my boss offered me to do some sys admin stuff.
I feel bad for my fellow programmer just because there is an old man in the company that doesn't come to me with his tech problems and goes to him.
Something like this goes down today:
OM: Hey, I can't watch my Fox Live News. Can you help me?
FP: The problem isn't on our side
*OM keeps pestering him*
FP: Let me check it out
*Goes and fix the issue and comes back laughing *
My coworker is to kind 😬😂😅2 -
When I got in this job:
No test, 0% coverage
No teamwork
No documentation (front and backend)
Senior doesnt want to talk
1year later:
We have test prolly 10% coverage
Still no team work
No documentation
Senior doesn’t want to talk
Ps: tried doing documentation but I cant unless my senior will help me because I dont know the ins and outs of the codebase.
I say crap.11 -
Scala's default Seq is MUTABLE. Why the fuck do I want mutability in my functional scala code!?
Now I have to riddle my code with imports to scala.collection.immutable.Seq which looks just ugly.
Gosh dangit.3 -
I continue to internally read and study about Smalltalk in an effort to see where we might have FUCKED UP and went backwards in terms of software engineering since I do not believe that complex source code based languages are the solution.
So I have Pharo. Nothin to complex really, everything is an object, yet, you do have room for building DSL's inside of it over a simple object model with no issue, the system browser can be opened across multiple screens (morph windows inside of a smalltalk system) for which you can edit you code in composable blocks with no issues. Blocks being a particular part of the language (think Ruby in more modern features) give ample room for functional programming. Thus far we have FP and OO (the original mind you) styles out in the open for development.
Your main code can be executed and instantly ALTER the live environment of a program as it is running, if what you are trying to do is stupid it won't affect the live instance, live programming is ahead of its time, and impressive, considering how old Smalltalk is. GUI applications can be given headless (this is also old in terms of how this shit was first distributed) So I can go ahead and package the virtual machine with the entire application into a folder, and distribute it agains't an organization "but why!!!! that package is 80+ mbs!") yeah cuz it carries the entire virtual machine, but go ahead and give it to the Mac user, or the Linux user, it will run, natively once it is clicked.
Server side applications run in similar fashion to php, in terms of lifecycles of request and how session storage is handled, this to me is interesting, no additional runtimes, drop it on a server, configure it properly and off you go, but this is common on other languages so really not that much of a point.
BUT if over a network a user is using your application and you change it and send that change over the network then the the change is damn near instant and fault tolerant due to the nature of the language.
Honestly, I don't know what went wrong or why we are not bringing this shit to the masses, the language was built for fucking kids, it was the first "y'all too stupid to get it, so here is simple" engine and we still said "nah fuck it, unlimited file system based programs, horrible build engines and {}; all over the place"
I am now writing a large budget managing application in Pharo Smalltalk which I want to go ahead and put to test soon at my institution. I do not have any issues thus far, other than my documentation help is literally "read the source code of the package system" which is easy as shit since it is already included inside. My scripts are small, my class hierarchies cover on themselves AND testing is part of the system. I honestly see no faults other than "well....fuck you I like opening vim and editing 300000000 files"
And honestly that is fine, my questions are: why is a paradigm that fits procedural, functional and OBVIOUSLY OO while including an all encompassing IDE NOT more famous, SELECTION is fine and other languages are a better fit, but why is such environment not more famous?9 -
Recruiters. Recruiters everywhere. I know, I know, F# seems to be the new hot thing now that FP has gained popularity and every bleeding company is looking for one. Well guess what? You got to make a pretty darn good offer for me to jump ship, and no, I’m not going to make much of an effort myself. If you want me, you sell me the job. I’m not going to do the selling here. I’ll come to the interview, do a programming test if I must but I bloody sure won’t tailor you a fucking resume. Everything’s on LinkedIn and here, have a link to my gh acco. That should be enough. No? Well go fuck yourself!3
-
In my experience object oriented is very good for composing high level abstractions into a complete system. Functional is awesome for validation, parsing and massaging data in any way and imperative is tithe most useful paradigm to handle side effect dependent code that either manipulate the computers state ( read/write) or communicate with external systems.
The people acting as if one of them is the one true way are misleading you.3 -
can't believe it but things actually have started to fall into place on their own, career-wise. feels unreal. need to work enough to afford a cottage with a cobblestone path & my life will be complete2
-
what is the point of having massive HR departments if something as expected and frequent as university hiring can't go smoothly?
i managed to reach the interview round for a big 4 firm only for the interviewer to not show up for 4 hours from my time slot (i waited the entire time - took periodic screenshots for proof), HR to say "we'll reschedule your interview, this happened because of internal miscommunication" more than THREE months ago, and dip. until december they'd repeat the same. now they've ghosted. thanks, virtual hiring.
how is it the candidate's fault? found out this isn't rare by speaking to a few others from my network who i knew were interviewing for the same firm. for students whose lives can change completely based on the outcome of an opportunity that they came across due to sheer luck and could definitely make use of because of their hard work - this is so heartbreaking and demotivating.1 -
Okay so I am a computer science student, and here's what my parents and relatives think I do-
typing random letters and numbers into the computer system until it magically turns into some working mobile app, which is their expectation. While I am coding some addition program just for them to see 2+2=4.7 -
Anyone in here successfully using a pure FP language/ecosystem on their day to day?
I know of one of you that uses Scala, and myself I have an (admittedly) shitty application at work running in Clojure. These last two languages I mentioned are not pure FP.
I am talking about the likes of PureScript, Haskell, etc. Those mfkas.
If so,what is your experience working in said paradigm? I tried to keep my Clojure program as pure as possible, I failed, but enjoyed it.
And I know that FP is not a silver bullet, but in some scenarios when properly applied it can work beautifully. I also have React based applications with pure components, but Javascript itself is neither a functional(pure or otherwise) programming language, it merely supports functional paradigms.
Just wondering, no flamewars or anything like that, I just want to know your pros and cons.6 -
This Monday I start my first job as a junior web developer and a coworker already my first two hours will be free time, don't know how to feel 😓2
-
Fuck you stackoverflow. You should have told me this before I changed my username. Did you expect me to know this somehow???9
-
After working with a coworker on some odd issues, I finally decided to check on the actual ticket he needed assistance with.
From now on, we will optimize our HTML for aesthetic appeal in Chrome's dev tools. display:none is verboten.
Sometimes I wonder if I've had a stroke or if I've died and am in purgatory. -
Unpopular opinion:
Coding on paper exams actually do help at beginner stages of learning to code.
It makes you at least think how to write things simply, without overthinking the problem, makes you familiar with semicolons (so all you stupid fks wont complain that it has taken you 2 hours to find missing semicolon (actually, who has ever encountered that problem, besides memes?)), makes you learn the syntax, just many benefits that spoiled OOP/FP starting kids cant see, because they relied on autocomplete so much.
God, I hate people who are trying to render things stupid just because they can't see the fking point -.-'
Losing my mind about who goes into "programming" and who calls himself "developer" is just fueled by that.8 -
I started making a library to get to know TypeScript. 4 days into the commits and I don't know if I made the best choice or the worst choice. I MEAN WHY CLASSES!! JAVASCRIPT IS MORE A FUCNTIONAL PROGRAMMING LANGUAGE THAN AN IMPERATIVE PROGRAMMING LANGUAGE! I DONT WANT TO NEW UP! I DONT WANT THE DEVELOPERS TO NEW UP! WHERE ARE THE DESIGN PATTERNS! I CANT FUCKING FIND IT!!4
-
Fucking unreal bro!!! I’m working on an issue and I pushed, then there was a bug, i fixed it again, another issue for the UI change, another fixed for sorting column. All that fixed I created separate branch. My boss called me and told me im stupid for creating a separate branch everytime on a simple fix, he told me that Git isnt used that way. He told me that his been doing this 30years already. So I asked isnt it the best practice to create a separate branch on every issue or if the branch has been merged? His answer is no. Fuck this guy and his 30years experience
I should’ve responded:
First of all, if we have a test suite then I would have notice that error but we dont. You dont even want to upgrade ruby and rails. We’re stuck at version 4 on rails. Second why are you merging my MR and reviewing it on IST? Why didnt you do that locally so you can address the issue before you merged? Third fuck you and your 30years
My actual response is:
Ahh yes sir, im sorry wont happen again, my bad, sorry for that mistake.
Fuck bro im mad!!!!4 -
I was brought into my new position as part of an transformation of waterfall to agile methodology.
We are now running 4 while projects and need to restart the remaining 29 projects using agile principles. The business management type people love agile, but somehow the people inside the current waterfall practices doesn't.
They are afraid their silo work will either expand or not exist thus making it hard to transform the company. Also the company have been subjected to the dead sea effect.
Therfore, the project that is currently in the space of transformation is making my blood boil because people just ain't passionate enough about software.
Either you craft software, or, well you sit and suckle other's money. People suckling should please grow up and start venturing beyond there cozy 9 to 5 and transform to be a professional software doer rather than a BA, DEV, IT GUY.
YOU BASTARDS GET A SHITLOAD OF MONEY AND DON'T DESERVE IT FOR THE EFFORT YOU BRING.
It is your software, own it, be proud of it. Read up to make it better. And as always, the people debugging your code can be a violent psychopath -
Maybe Rant
It's 1:30 AM and I finally finished implementing a simple function after more than an hour.
Not sure if I should be upset about my stupidity or glad that I solved it.
If anyone is interested in learning Haskell I totally recommend these exercises: https://github.com/data61/fp-course
filtering :: Applicative f => (a -> f Bool) -> List a -> f (List a)
filtering p = foldRight (\a -> lift2 (bool id (a:.)) (p a)) (pure Nil)1 -
Yey I got a raise. From 55,000 to 56,500 annually. Go Junior me! Hahahaha. Not enough for California though but I’m grateful.10
-
The worst thing about Java is, that it created a generation of coders, that think OOP is the opposite of FP.9
-
Here’s a snippet of code that I found in our production codebase. I found this while fixing a bug. This is not part of the bug though but I see this a problem. Should I say this to my senior that his logic is off here?
First he doesnt have to do explicitly strict comparison since the return type is boolean and it could be true or false. Also the returnUrl will alway be undefined because redirectIfUserLoggedIn is called first before it was set.
He dosent like me. Hell get mad for sure. I think ill let this go.37 -
Pet peeve: the claim that static typing prevents errors.
Today I worked on a C# project that's a mess of nulls, side-effects, inferences, and race conditions. Then I went back to a JS project that's twice the size but written in a clean, well-tested, FP style and currently has fewer than 10 issues logged.
Look, I get that there are upsides to static typing, and I'm open to introducing typescript or flow for our JS code.
I just can't stand the faux-concern from the static typing dingleberries when they are the ones who produce these horrendous lumps of unmaintainable shit, and the JS/Python/Ruby/etc people are over here quietly reinventing functional programming and code modularity.10 -
For the first time in a very long time, I am out of a software engineering job. I have no idea why I am handling this so well. I literally have no idea if I will get another job or not but for this month, I am working on myself and learning more on FP which is really fun btw. Is this maturity?9
-
Just noticed github shows Infinite contributors for chromium repository. (https://github.com/chromium/...).
Also, I clicked on the contributors tab and the page is still loading. Guess it will take infinite amount of time to finish loading :?3 -
All code and no tests makes a software buggy, hard to maintain and a pain in the ass to work with.3
-
Ever tried explaining GitHub to someone? I swear it's like trying to teach a dog to ride a bike. You can try, but it's probably not going to end well.
Okay, rant over. Back to coding... and dealing with merge conflicts... and pull requests... and GitHub issues... sigh.4 -
Meeen fvck this shit. After my student loan I’m out in this shit ass company men.
So I’m fixing a frontend bug. I’m so into it that I opened more than 10 tabs. So i called my senior on what I found then he want to test something on my workstation so i said im cool with it and then i closes all the TABS man. Comeon!!
Ps: the tabs are sequentially opened to track the bug.12 -
every day my boss says he'll review the requirements for our product. every day he forgets to do so. every day he asks where the update for the next stage is. every day i remind him. every day he forg ---2
-
At this point, I feel so far from tech and programming so nothing is exciting anymore, although, I'm working as a "software engineer".
Every job feels deadend and requires nothing but absolute mundane skills. I mean "make the text bigger"-joke does not come out of thin air. No science, engineering, and little-to-no standards are involved in most jobs.
This leads us to this: you can get excited about rust, fp, extra dazzling clean code, uncle Bob's sect of salvation coders or whatever but you'll be hit with reality so don't get your hopes up.1 -
Can we take a moment to recognize how absolutely retarded JS' event system is?
Events aren't objects. No, they're managed by an object, and identified by a string.
To subscribe to an event, you call object.addEventListener(name, callback). Because for some reason we can't just have an event object. Events MUST have an owner.
But to unsubscribe you don't call the function addEventListener returned, you don't use the token it returned either. No, you pass the same function to removeEventListener.
Because we don't use serializable tokens like in PP, and we don't return functions like in FP, no, we use functions as tokens, realising idiomatic DFP.2 -
3 weeks into Elixir and Functional programming in general. Words can't describe how much I love developing software with this toolset. Can this get any better ?4
-
Did an intro to functional programming course in Scala.
Felt like I was able to touch the face of an immutable God. :')8 -
Hey, dfox & trogus
How about some Haskell/Scala/F#/OCaml/Clojure/Scheme swag? For example, I'd love a Haskell-caped devDuck.
Show us functional programmers some love pls ;_;2 -
I love FP for sure, but it kind of looks weird in PHP. Tough I realy like the desgin of this website.
https://phpslang.io4 -
Hi. I just wanted to share I failed the google online interview. Thought I was prepared, I vomit and had diarrhea 30mins before the interview, Always makes mistakes on google docs. I keep pressing tabs which uglifies the code, miss-spelled my variables and functions name, mistakenly put everything in const (I got used to my editor yelling at me when I used const instead of let, should not rely on this). But there's always next time. I hope.6
-
Me: What's this new icon in the app?
* Long press on the icon *
Nothing
Me: Huh. Ok. I will press it and see what it does.
* Presses it *
You have successfully done what you did not want to do. Congratulations!
WTF! Just tell me what it does when I long press it.1 -
This extension is awesome. You can have dark theme on every website. Although sometimes it fucks up the website layout a bit.
https://addons.mozilla.org/en-US/...3 -
Do any of you all have any recommendations on how to drill functional programming concepts into my brainhole? Any good resources or things that helped you learn? My brain is object oriented and I'm really struggling to "see the light" and become another FP hypebeast (which is what I feel most people become when they really learn this stuff)
Send help
Regards,
A desperate loser who doesn't wanna fail her course 🥺🤷13 -
It's a shame that people don't want to use F# but prise C# for how cool it became and continue becoming. At the same time, little do they know that many of the features were simply drawn from F#.
It's just rediculous how far this OO and C-Style syntax crap has progressed. They keep copying things from functional langugages, making the initial language to be a monstrocity like C++ is now, insted of just using languages like C#. I mean, it was right there before C#: async/task, immutablility, records, indexes, lambdas, non-null by default, who the hell knows what else.
Besides, many people (in my company at least) are just blindly overengineering with patterns and shit, where a simple function would be just enogh.
Watch some some NDC talks about F#, in particular those of Scott Wlaschin. It's just better in so many ways: less noice (I'm looking at you, brackets, commas and semicolons), the whole LOT of type inference and less duplication (just look at the C# signatures of linq methods - it's difficult to read them), immutability by default, non-nullable by default, ADTs and pattern matching, some neat features like type providers (how many times have used "paste special" or an online tool to create C# classes from a JSON/XML file, and how many times have your regenrated it because of schema changes?) and units of measure.
Of course, in some cases it's not optimal, in some cases mutable datastructures of C# are better for performance. But dude, how many performance critical systems have you wrote in C#? I mean, if it comes to performance you should use Rust or C++ or C after all.
*sighs*15 -
Always have a roll forward plan, backups, and a site B. Especially if you think it is a non critical system.
-
Went to meet up last night. I was there acting like I have no experience and was just starting to learn programming. Suddenly this guy turns and faced me he said non verbatim “don’t use JavaScript thats the worst programming language, its used by wanna be software engineer. Use c# they have blazor so you wont have to code using JS”. My blood pressure went up guys. I understand this because hes kinda old and dont want to learn new things but i got caught off guard. To be honest im not mad, im just sad though, imagine if i was really new and had no experience and just started few months ago. All the hard work and studying will be nothing. Btw hes nice he offered me free food and beer its just JS.
If you’re learning any language specifically JS. Dont mind the naysayers. Just learn it and be good at it. Languages has its use cases. Conversation with whats better programming language is useless and a waste of time thats what my professor said and its true.15 -
Let me rant! I don’t usually do this but this is just frustrating and draining. Please tell me if im wrong. We have authentication that needs to be refactored. I was assigned on this issue. Im a junior btw. I also attached an image of my proposals. The issue of the old way of our signup process is that when validation fails they will keep on accepting the TaC (terms and conditions) and on our create method we have the validation and creating the user. Basically if User.create(user_params) create else throw invalid end. (Imma take a photo later and show it you)which needs to be refactored. So I created a proposal 1. On my first proposal I could create a middleware to check if the body is correct or valid if its valid show the TaCs and if they accept thats the moment the user is created. There is also additional delete user because DoE told me that we dont need middlewares we have before and after hooks! (I wanted to puke here clearly he doesn’t understand the request and response cycle and separation of concerns) anyway, so if middleware is not accepted then i have to delete the user if they dont accept the TaCs. Proposal 2. If they dont want me to touch the create method i could just show the TaCs and if they dont accept then redirect if they do then show form and do the sign process.
This whats weird (weird because he has a lot of experience and has master or phd) he proposes to create a method called validate (this method is in the same controller as the create, i think hes thinking about hooks) call it first and if it fails then response with error and dont save user, heres the a weird part again he wants me to manually check on each entity. Like User.find_by_email(bs@g.com) something like that and on my mind wtf. Isnt it the same as User.create(user_params) because this will return false if paras are invalid?? (I might be wrong here)
This is not the first time though He proposes solutions that are complex, inefficient, unmaintainable. And i think he doesnt understand ruby on rails or webdev in particular. This the first time i complained or I never complained because im thinking im just a junior and he hs more experience and has a higher degree. This is mot the case here though. I guess not all person who has a higher degree are right. To all self thought and bachelors im telling you not all people who went to prestige university and has a higher degree are correct and right all the time. Anyway ill continue later and do what he says. Let me know if im wrong please. Thanks4 -
Just starting with scala. And while I dig the more functional programming approach I am having the hardest of times dealing with naming higher-ordered functions, in my case a function returning another function.
Started out as `foo`, went through quite a lot of changes, and now it has become the beast: `createReplacePriceByPassengerConfigurationMapperFunction`. It won't stay that way but: GOSH! Naming. It's hard! Or I might as well suck at functional programmig. It's not like that these two things are necessarily mutually exclusive. -
Smalltalk, the language that keeps popping up in articles I read about nice languages and seems like the real underdog that's gone under the radar now that FP has taken hold. Must give it a go.4
-
Is it weird that I hold a high degree of respect for every sector in programming. When we talk about front-end, back-end in websites to the GUI support and logical end in desktop applications to cloud-based microservices, I respect clean, swift, and agile developers who who a structural mindset. For the founding fathers of assembly to high-programming languages like c all the way to high-high level programming languages like C#, JavaScript, Python, I respect them and thank them for their time and dedication in relatively stable libraries. I also thank the creators of OOP and FP as well as the developers that make great use of these paradigms. I come to realization that no one wants to fuck shit up; the great engineers of our past wanted to build some legit, non-trash programming tools, and we can't bash them for that. Respect, courteously critique, and build applications and programming tools to a standard that someone in the future would admire and be grateful for.4
-
fuck lazarus
fuck pascal
please people you get C, C++, rust, java, javascript EVEN BRAINFUCK is better than this fucking stupid and obsolete language.
The toolchain is just horrible. fpc, fp-compiler, lazarus...
Even in repos 3.0.0 is not the latest one. Like who the fucking cares about improving this language, please think of people who don't give a shit and freeze it already
language is slow
language is horribly verbose
language is CRYPTIC to debug
nobody sain would ever want to learn this language
10 years ago as a student I would pit on lazarus
today I still pit on it
now about lazarus...
The IHM is one of the most shittiest interface we could ever dream of.
Even gimp does it better
you get to download fucking Mbs for a condensated pack of windows all over the places
fuck that2 -
dev && !rant
I am thinking about picking up a functional language. Currently I use Kotlin (and I fucking love that language) but I have to admit that it's support for functional programming is limited.
But I think their lies a certain beauty in fp and I want to do some project with it.
The 2 main problems are:
1. I have no experience in functional programming. I have no clue how to structure my program (potantialy without oop) and write clean testable code.
2. I don't know what language to use. Scala seems great since it has good IDE support and I like the Java ecosystem and Haskell seems to have more beauty but is missing that IDE support and it is very unfamilar for me.
So what do you guys think I should pick up? And how do I learn to write good software with it?17 -
Good Lord!
FP looks nice, feels right, scratches the itch when written well, but supporting, debugging and fixing/extending it is a fucking hell!
Well, it's either FP or TS/Node.4 -
I like working my 10 hours a day. So for the 6 of them I want to pair program with my grads I expect them to be as focused as I am, actually even more, but 25 minutes into a session they just zoom out and start making jokes.1
-
Fuck this shit. Any socket connection on JIO's fucking network gets dropped after 5 seconds if no data is sent. It's working on any other network. Wtf is going on???
Does anyone have any idea on this?
If someone has jio network please go to https://www.websocket.org/echo.html
And connect and check how long until it gets disconnected. Would be greatful if someone can validate this.
The project I am working on uses websockets extensively and this thing is screwing it up. I have temporarily set websocket ping interval to 3 seconds but what if the f**ckers over at JIO decide to start dropping connections every 1 second?7 -
Senior: “we can go remote now, but you have to report what you did at the end of the day. Ex: 7am clock in work on bla bla to 10am. 10am -12nn still working on bla bla. Til end of day.”
What a crap. Now I don’t want to work remote with this bunch of reports at the end the day. Some bullshit in here.3 -
Developer 1: You know what they say, programming is just like sex.
Developer 2: Wait, what? I've never heard that before.
Developer 1: Yeah, you spend all your time trying to fix things that should never have happened in the first place.8 -
So a monad is basically a specialized object for converting to and from a datatype. So FP has specialized objects. Monad marries OO with FP in that sense. In C++ I would do this pattern with a class because it makes sense to encapsulate it there. Or at least a namespace.
Change my mind.
https://en.wikipedia.org/wiki/...7 -
Men fo real! I dont rant so much because I think its a negative attitude but let me do it anyway! Listen. My boss boss told me to create a dynamic drop which I did. A backend request then display it on the frontend which is easy, then on code review he ask why do we need this error handling. Bruh as soon as I heard that question, I got covid. Bitch we do need that error handling because if theres error on requests it will set to default options, but I didn’t say anything tho. I just ask what will happen if there’s an error?, he said I don’t think a simple request will respond error if you did it right. Then I agreed and remove the code. Hot damn! Mind you guys. When they started the app there are no test code. 0, nada, nothing inside the spec folder.7
-
I’ve abandoned the classic for loop from my tool belt for quite a long time now. The vast majority of the code is functional.
But today I’ve encountered a problem where I’m considering to use the imperative for loop again because I can’t come up with a good functional approach.
Maybe you guys have an idea.
I have a list of items and I want to make a new list which is like the original list, but it has extra items in between of some other items.
The tricky part is that there is a condition that needs to be checked for each pair of items to determine if the new item should be inserted in between. Otherwise nothing should be inserted.61 -
Hey read this. This shit is funny. HAHAHA
I was fixing a bug right. The bug was throwing InverseOfAssociationNotFoundError in our rails admin page when deleting a user. So the director of engineering called and we had an argument because he was insisting that the error InverseOfAssociationNotFoundError is OUR IMPLEMENTATION. HAHAHAHAHA. my goodness. I showed him that the error comes from the constraints when deleting a user. A table has no relation to the user table but my senior added it anyway for some reason. I was mad and laughing at the same time because I showed him the documentation and the simple fix. These idiot keep flexing his 30 years of experience. HAHAHA3 -
Finding it hard to focus. I'm into UI, backend, frontend, iOS... Exploring FP. We've just had our first child and I need to put my time and energy into what will a) provide healthy financial remuneration b) be more enjoyable than frustrating c) be relatively futureproof (if that's even possible). For some reason I have a huge distaste for JavaScript (as an ecosystem) which has led me to look into Elm. I've enjoyed Ruby but something in my mind tells me Functional programming is more logical for me. It's a whole new approach and skill to level-up on. I love programming my own back-ends, but for me, design is so important and I want to be part of the visual, tangible part that people interact with. I'm a one-man operation which means I do design, full stack Development, client liaison, financials, client acquisition. Freelancing is a double edged sword - I don't know when the next project will come, but I also need to focus on the projects I have without taking too much on. At times I think employment would be good, despite having it's on drawbacks which I read about repeatedly on here. Any advice?1
-
I’m learning Haskell and my mind is blown by how elegant functional programming is, it might take a while for me to get accustomed to FP but I can’t wait to get there. Thinking of making the 2048 game in Haskell as a learning exercise3
-
!rant
I'm a full stack web dev (LAMP, MEVN), not a sys admin. Besides complete control of my os, are there any benefits to a Linux-based os like arch or ubuntu? I've played around and set up both in VMs, but I'm struggling to find a benefit that justifies the setup commitment.3 -
Flame war:
Best functional language + eco system for web dev -
F#, Haskell, Scala, elixir, other?
Same for scientific/mathematical simulations?9 -
Ok its been an hour now trying to find a way to push a NEW commit to a MERGED branch. SMH! Help gitlab!7
-
Turns out composition over inheritance won't save you from downcast hell, it just becomes `_ => abort()` hell.4
-
what are personal projects if not the daughters of hackathon solutions that never saw the light of day6
-
Do you think, that its a good idea, to add FP-features like Map,Filter,Reduce to Stack or Queue datastructures, in the way, that they pop all elements?6
-
Why my friend learns new languages: will it get me a higher salary?
Why I learn new languages: work isn't challenging, I don't have any side projects, don't feel like binging anime...
Just started learning Scala to once again try to pick up FP paradigm.
I'm also thinking it may be better for understanding algorithms?
Yes I know I'm late to the party -
OK. We've got this tiny little pet project of mine (work related)…
I rescued it from the git archive, simply put: someone hot glued an elasticsearch scroll + document processor (processing) together.
After a lot of refactoring, I had an simple, much improved (non-parallel) Akka Worker System without an Akka topology / hierarchy.
I left out the hierarchy at first, because I didn't know Akka at all.
I've worked with a lot of process workflows, and some systems that come very close to IPC, so I wasn't completely in the dark.
Topology requires knowledge / creation of a state machine / process workflow. And at that point of time I just had... Garbage. Partially working garbage.
I finished yesterday the rewrite into several actors... Compared to before, there are 8 actors vs 2... And round about 20 classes more. Mostly since I rewrote the Receive Methods of Akka as Command DTOs... And a lot of functions needed to be seperated into layers (which where non existent before)
Since that felt more natural than the previous chaos of passing strings or other primitive types around, or in the worst case just object....
(Yes: Previously an Actor was essentially a class with one or more functions "doEverything" and maybe a few additional functions which did everything - from Rest Client to Processing)).
Then I draw the actual state machine based on everything I've written in the last weeks and thought about how to create the actual topology and where / how parallelizing might make sense.
Innocent me stumbled in the Akka Docs on Akka Typed... (Didn't know it existed, since I'm very new to Java and Akka).
Hm, that sounds an a lot like what I did. In an different way, yes. But not so different that it might be VERY hard to port to.... And I need to change (for implementation of hierarchy) a few classes....
[I should have known at this stage that my curiosity would get the best of me, but yeah. Curiosity killed the cat.]
Actually the documentation is not bad. It's just that upon reading the first more complex examples, my brain decided to go into panic state.
The've essentially combined all classes in one class in all source code examples [which makes sense more sense later], where it is fscking hard for an chaotic brain like mine to extract information....
https://doc.akka.io/docs/akka/...
The thing is: It's not hard to understand… actually very simple.
It was just my brain throwing an fuck you tantrum.
So I've opened more examples in other tabs and cross referenced what happened there and why...
Few frustrated hours later I got that part.... And the part why it's called Akka Typed. It was pretty simple....
Open the gates of hell, bloody satan that was too easy for fucks sake.
Nooooow.... I just need to port my stuff to Akka Typed.
Cause. Challenge accepted, bitch - eh brain. You throw tantrum, you work overtime. -.-
I just cannot decide wether to go FP or OOP.
Now... I'm curious wether FP is that hard... Hadn't dealt with it at large before.
Can someone please stop me... I'm far too curious again. -.- *cries*6 -
Hey Postman,
Please fucking stop downloading minor updates and bug fixes automatically. Even if you do it, give the users an option to cancel the fucking download so that they can, you know, peacefully use the app for what it was built for.7 -
Okay so being a developer is mostly like playing a never ending game of whack-a-mole with BUGS, you think you have fixed one until few more pops up like a bad case of acne.
But you know what's even worse? When you finally get something working, and you're feeling all proud of yourself, and then someone comes along and tells you that it's not "visually appealing" enough. "Can't you just add some more glitter and unicorns to the homepage? Oh, and can you make it look like it was designed by a unicorn who majored in art?"12 -
I often get distracted by other incompetent teams and preach ddd and tdd to them instead of writing my own code1
-
This got me fucked up. Listen yo.
So we have this issue on our modal right. The issue keeps poppin. It's a hotfix because its in prod. So my senior and I were on it. After a few hours, I showed him the part of the code that is buggy. It's 50 lines of code of nested if-else, else-if. And so we're still fighting it. He redid everything since we're using angular2 he did a subject, behavior-subject all that bs and I was still trying to understand what's the bug, because it's happening on the second click and so I did my own thing and found the cause bug and showed it to him, its this:
setTimeout( () => {}, 0)
the bootstrap-modal doesn't allow async inside it (I dont why, its in the package). So he explained to me why it's there. So I did my own thing again and find a workaround which I did, a one-line of angular property, showed it to him he didn't accept it because we'll still have to redo it with subjects and he was on it. I said ok. Went back to my previous issue. The director came in and ask for a fixed, my senior came up to me and told me to push my fix. Alright no problem. So we good now. Went back to our thing bla bla bla, then got an email that we will have a meeting, So we went, bla bla bla. The internal team wants a support for mobile, senior said no problem bla bla bla, after the meeting he approaches me and said (THIS IS WHERE IT GOT FUCKED UP) we wont be supporting bootstrap4 anymore because of the modal issue and since we're going to support mobile and BOOTSTRAP4 grid system is NONINTUITIVE we are moving to material design because the grid system is easier. I was blown away man. we have more than 100 components and just because of that modal and mobile support shit he decided to abandon bootstrap. Mater of fact its the modal its his code. I'm not expert in frontend but I looked at the material design implementation its the same thing other than the class names. OHHH LAWD!3 -
I am planing to create a reading list for technical books and am looking for recommendations.
Currently I have:
- Spark: The definitive Guide (need it for a university project)
- Clean Code
- Clean Architecture
- Functional Programming, simplified (or any other beginner-friendly book about FP)
Do you have any recommendations and must-reads for a more junior developer? I am looking for stuff about FP, Code Quality, Java, Python, Scala, and any general interesting technical stuff.3 -
Just typed this into the Python interpreter and my whole system just froze. Guess I have to do a force shutdown.
x = list(range(1, 999999999))
So is there a way you can somehow configure your linux system such that the window manager/system is never out of memory or processor time? So that atleast I get can atleast kill the process which is freezing the system.3 -
FP features in OO/Imperative languages are more Data Oriented Programming (DOP) features than FP. Clojure popularised the term and now every FP language is trying to say “oooh FP is mainstream now”.
No its not. Nobody really cares if you managed to create this beautiful effect system that can emulate what OOP does for decades now. What people care is making data transformations simple and flat.3 -
Some 80s and 90s books. And the more the time goes by the more I lean towards FP and stateless systems...
On the syntactic side I love the work of Kevlin Henney. For me it's all about readability. So a lot of choices are based on that. -
One of my few friends died with unknown reasons. Would it be unethical to hack their accounts to get more info?5
-
Meeeen this is crazy. The director created a testing route inside the actual api controller instead inside the spec file. Common man. We better than this. 🤦🏻♂️2
-
!rant
Learning and working on a project built with purescript (fp).
Wrapping up my brain to think functionally and understanding it to implement is like rewiring my brain. I sometimes have to literally sleep on it, only to go through the concepts again the next day to get a little more insight than the day before 😝
Functional concepts are abstract af, but it sure does give you wings to liberate you from conventional way of things. -
What you do ?
Competitive programming (CP) or Functional programming (FP)?
And if you FP then how much competitive programming you think you need in your job or whatever your current scenario is .14 -
Why are we still on the object oriented bandwagon? Having started to learn FP, I feel that we need to be transitioning to FP stacks way more faster given it's huge advantages.
I'm really interested in knowing your opinion2 -
im having this subject in my academic syllabus - VHDL. the teacher was teaching its programming syntax and he didnt know the difference between a hyphen( - ) and an underscore( _ )2
-
Python's wonderful `reduce` for the win. Using it makes you feel like a FP pro, but also makes code really unreadable sometimes. (Sigh)
-
need more experience for good entry-level jobs, need a good entry-level job for more experience. yay4
-
Has anyone developed websocket server in Nodejs?
I am planning to use socketcluster. Has anyone had experience using it? Is it good or should I go for something else?11 -
Unlocking your potential takes time.
Throwing away time is so easy to do and we are all guilty of it. How much of your time have you wasted not living up to your potential? The answer is brutal and may overwhelm you.
You have probably wasted some of your time but at least you haven’t wasted your whole life, yet.
You still have time and that’s the best reason to stop wasting it and unlock more of your potential. It hurts to know you have been lazy or procrastinated, but it hurts even more to ignore that fact and pretend everything is great.
source: https://psiloveyou.xyz/overwhelming... -
As a junior, mild and hacky OOPer/TDDer I once worked with an architect who professionally introduced me to functional programming obsession and TDD fanatism.
I'm not a junior anymore, I have less dev friends too, but now none of them has unforeseen side effects or unexpected behaviour. -
@highlight
disabled: Set<string> = new Set();
@highlight
<input
class="form-control"
id="pushBack"
type="text"
[attr.disabled]="disabled.has('pushBack') ? ' ' : null"
[(ngModel)]="local.pushBack"
/>
---
Do you know what's wrong with this code? If you know and you are a junior how would you tell this to your super boss without hurting his feelings?7 -
can 2 modal which is static have a race condition error? I’m trying to fix a bug and when I showed it to my senior , I said maybe because of the first modal the style is not being applied on the second modal he then said “it might be a race condition” and I almost choked on my own saliva.
Ps: the first modal will show a loading text and a gif after that the second modal shows with some data.
I got confused how he think that it might be a race condition. We’re not doing webworks on the front end. Weird.2 -
FP/Math guy here. Just opened Ionic docs because... anyways. Why am I getting an unusual amount of red flag raising here? Even scared to go on.
-
which is the best cloud provider for a complete beginner (user/dev) in terms of community support, employer preference and user-friendliness?
i know that understanding the tech and concepts behind it matters more than getting familiarized with a specific platform, but i'm looking to build a more diverse profile and have noticed many positions asking for AWS/Azure experience.
since i'll be starting from scratch, any provider with easy-to-follow documentation, online help and certifications that don't leave you broke (would have to pay myself, earn very less as a student from a third-world country, parents/current employer can't support) would work.8