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 - "domain language"
-
Recipe for a Great Programmer:
Ingredients:
-Books for a computer science curriculum from a top university
-Computer
-Headphones
-Internet
-Stress ball
-Pillow
-Lighter fluid
-Food
Directions:
1. Cover computer science books with lighter fluid
2. Light books on fire
3. Use flames to cook an energy-rich meal for the thousands of hours ahead
4. Pick an IDE
5. Choose a project beyond current capabilities. Good ways to push boundaries:
- Unfamiliar domain (e.g. large scale data processing, UI programming, high performance computing, games)
- Exotic programming language
- Larger in scope than any project before
6. Shut up about your IDE
7. Attempt to build
8. Stop procrastinating on Hacker News
9. Re-attempt to build
10. Squeeze stress ball and scream into pillow as necessary to keep sanity
When stuck:
- Paste stack traces into Google
- Find appropriate mailing list to get guidance
- Realize that real learning happens when you are stuck, uncomfortable, and/or frustrated
- Seek out books, classes, or other resources AFTER you have a good understanding of your deficiencies
11. Repeat #4 to #10 for at least 10 years
12. Results guaranteed! (to the same extent static types guarantee bug-free programs)
source: nathanmarz.com4 -
Fucking HR interviews. Fucking "tell me about yourself" and pretending to seem interested in what i have to say while you think about how you did it with a guy behind the dumpster.
For fucks sake, i am a developer, i have spent more time with coding language than human language. I speak more to a rubber duck than to my friends. That's what you want to know about me?
I am here to fix your fucking site that uses flash plugin in 2017 and you want me to tell good things about your company?
Do you want me to tell you the details about your site that i got from whois and that your subscribed domain registration will end in September this year?
You don't know what responsive design is and you dare interview me?
Thanks for wasting my time and telling me shit about your company and how you have offices in germany and china. Well guess what? I dont care. I am busy thinking about some girl... Actually i am thinking about my side project. I dont know why i pretend to be cool?7 -
Enjoying the college life to the fullest was the mindset of the confident boy, who now burns the midnight oil to cope up with world and give himself a proud future.
Is this a story of some successful person, who has achieved a lot in his life?
No, it is the story of the guy who lost all his hopes of future after spending the very first month in his college.
The first month was enough to perceive the reality of the domain I got myself let into. It was enough for someone, who didn’t even knew what programming languages are, to realize how left behind is he from the people around him.
Being from a private college which hardly anyone recognizes, expecting them to prepare me to stand out lone would be foolishness. I took my first step and started learning my very first programming language , Python.
I met some people with similar interest .We discussed, we exchanged resources, we used to talk to seniors to guide us. And yes, we were guided.
There were many bad days. Days which made me regret about starting late. Many a times I myself confirmed me as useless and some other time people did. The good thing is I never stopped , and improved myself with each day.
And now, after spending more than a year in the same college, I look at the things I have learnt. Today I can develop decent websites, can train neural networks, can make me stand in good position in coding platforms.
All you need is to take a step.I may not be the best, but I am definitely better than what I was yesterday.
If you have started something, then concentrate on finishing it.4 -
As a consultant, you get tasked with a variety of stuff. Last few weeks been struggling to maintain an old C++ application that was written by a complete tool of an a$$hole with zero knowledge on how to write maintainable and production quality code. It would hardly run without a crash. First it was a challenge I had to accept, but as I stabilized the code and just fell over even more traps, I had to admit defeat and review my approach.
Rewrite is something I would choose last, but this one ticked all the marks worthy of a rewrite. So, the customer is a very friendly researcher and gladly spent 15 hours with me explaining all the math and concepts - just a delight for a programmer to have such a customer. Two days in, with a DDD approach - a functional, more precise, faster and stable application.
Sometimes there is no rant to share, it's rare to have that perfect communication with a customer that is so dedicated that he spends so much time teaching you his speciality and actually understand your approach. DDD was really a lifesaver here, by using it's key concepts and ubiquitous language. The program is essentially 8000 lines of math, but wrapping it up with value objects and strong domain models made me understand his domain and him mine. It also allowed me to parallelize the computations, giving me a huge performance boost. Textbook approach, there will not be many like this!4 -
TL;DR: A freehoster got a redesign!
I remember when I made "my own website" in wix and sitey. It sucked working with them for me. I hated having an ad for them fixed at the bottom of my screen. I hated WYSIWYG-editors and wanted to paste my own code, a pro feature.
Sometime later I found bplaced, a free german based (also English language) hoster. And I use it for all my "official" test project. My first ever published self-coded website is still on there.. When I want to show someone what I've been working on (locally) without putting it on my domain, I use their services. They always looked oldish like from 2000 but their redesign puts them at least in 2015 :D
Give 'em a shot if you want.
Sadly, I am not paid to say this. I just really like them.4 -
Yknow, I want to make an android app that I have in my mind for about half a year now and I already tried twice, both with Kotlin and with Java but everytime I try it's just pain and suffering and frustration...
No it's not because of the language, I like Java and I like Kotlin too and I'd say I'm at least decent at Kotlin and really good in Java...
No no.. the issue is the fucking Android SDK and the mix-and-match documentation available online!!!
Every fucking time I want to implement some sort of UI element, user action or a background service and I start googling how to do it It comes with with at least 3 different stack overflow solutions, all of them saying "that way of doing it is deprecated, instead you should X" and looking up the OFFICIAL FUCKING DOCS it will just make me roll up in the corner and cry because of how fucking inconsistent it is and the retarded domain language it uses... fucking transactions for fucking fragments inside fucking activities... because I guess the word "screen"/"view"/"template" or something similar natural just was too mainstream for the all knowing alphabet soup that google is...
And then you start looking up what the fucking difference even is and how to code it up only to find out there's at least 12 other opinions on how fragments should be used and what should be an activity and what should be a damn fragment...
But that's not all, that's just the base... I get a headache even thinking about how the fucking inflating of templates and the entire R. notation works. You want to open a fucking tiny corner menu with the settings options? WELL THEN YOU FUCKING BETTER REMEMBER TO IMPLEMENT IT THROUGH SOME SORT OF EVENT AND INFLATE THE MENU YOURSELF EVEN THOUGH ITS THE SAME FUCKING THING WITH STATIC STRINGS...
AND WHY THE FUCK DO I NEED LIKE 4 NEW FILES TO IMPLEMENT A FUCKING LISTVIEW...
also talking about ListViews... what was wrong with "ListView"... Why do we need a "RecyclerView"... oh right... because the fucks fucked the fuck up and all the legacy components were designed by a monkey and are next to useless! SO WE NEEDED A NEW NAME FOR THE FIXED VERSION, CANT NAME IT LISTVIEW AGAIN... FUCK YOU...
honestly... if I got a dolar for every "what the fuck android" I said during trying to understand that mess I'd be richer by a few hundred...
oh oh oh, but you know what? You don't like the android SDK? that's fine, you can use fucking React or Flutter or something... yeah.. because instead of torturing myself with the android SDK I want to torture myself with an abstraction of the same SDK and JavaScript as the fucking cherry on top... HAVE YOU FUCKING SEEN THE CODE FLUTTER SHOWS ON THEIR WEBSITE AS THE "Introduction" ?!!!
Look at this piece of shit:
[code in attached image, we could really use a proper Markdown support at least for rants]
THAT'S NOT EVEN THE ENTIRE THING, THAT'S JUST THE *REALLY* UGLY PART...
The fucking nesting... What is it with JS and all the fucking nesting everytime?! It looks like shit.... It reads like shit as well...
WHY, in the name OF FUCK, IS THERE MORE THAN 5 ANDROID FRAMEWORKS and ALL of them... used this FUCKING NOVEL idea of programming using A FUCKING BRACKET WALL
It always looks like:
(code(code[code{code(code{code()})}]));
If I wanted to make a fucking app or a website using fucking Haskell I'd do that.... at this point reading assembly code feels like heaven compared to this retardation... Why is this so popular?! WHAT DO YOU PEOPLE SEE IN IT?! Clearly it's not the aesthetics... it looks like a fucking frog vomit running down an emus leg, fuck that.... I don't even hate classic JavaScript, it's a good enough language and it does what I tell it to... but these ugly fucking frameworks like react, angular and whatever else uses this fucking format can go fuck right off. This is not the way JS is gonna get a better name for itself...
So:
Fuck Google
Fuck the marionette that designed the Android SDK
Fuck the Hellspawn the came up with the "functional-like" way of using JavaScript
Fuck everyone that thinks "JavaScript everywhere" is a good thing
And deeply future-fuck everyone that makes a new framework following any of these standards, stucks a .js at the end of the name and releases his hairball.js of an invention into the fucking world....
It's a mess... fuck everything android related...14 -
R is the worst language.
* Indices start at 1, so you have to fix all your calculations by either +1 oder -1. It sucks
* Vectors and Lists are both neither vectors nor lists
* Data frames dont have a proper api. Simple operations like add or remove are a pain.
* The naming „conventions“ suck. Why on earth would add dots in your identifiers? You never know if its an object, a value, a function.
* The namespace is cluttered. If you import two libraries that deal with the same problem domain, it is likely that they define functions with clashing names that will overwrite each other defined on import.5 -
I am a firmware developer with 4 years experience. C and sometimes assembly is my bread and butter.
Like 2 years ago, I was really interested to make a switch to application development. Got referred by my friend to her startup.
But I was a bit rusty with my data structures, high level languages and interpersonal skills.
The first question was to find the number of occurences for each word in a paragraph. The language choice was Java. But I was allowed to use C++ since it was the closest relative to Java that I knew.
And I started implementing a binary search tree from scratch and started inserting each tokenised word into it, wrote a traversal algorithm.
The interviewer, luckily, was a patient guy. After I completed my whole mess, he asked is it possible to do this in a slightly better way with constant time access without traversal.
I said yes, we can with a hash table but I dont know how to implement one. He replied I dont expect you to implement the hash table but see you use it. I asked him if I am allowed to used the standard library, for which he said ofcourse.
*facepalm*.
Finally I understood his expectation, referred cppreference.com and used an unordered_map.
Later there were some quesion on databases for which I tried my best to answer. And I frankly replied that I am not comfortable with JS frameworks as of now. Got rejected.
So the mistake is I never asked basic questions like what is the time complexity expects, if I was allowed to use standard library, didnt spend some extra time on studying stuffs needed for the domain switch and most importantly I panicked.7 -
Hello world again, long time no rant.
Renewed interest in devRant after some of recent goings on:.
“Let’s define a new language”
“Why? There are lots of great languages out there”
“It will be domain specific and more user friendly”
“Why, there are plenty of other options with support and pedigree”
“We will properly define a grammar in Backus-Naur form, it’ll be great, maybe we can sub it out”
“Why, literally everything we do is already doable with the current tools, this will certainly be more trouble than it’s worth”
“They already gave us the money”
All aboard! Fun times ahead for the next decade...8 -
Everywhere you go, you find these memes where developers are skeptical of their work. Things like "It works. I don't know how. It doesn't work. I don't know how.". Don't you guys think this is a huge problem? And people say that their programming language is the best, because preference. But isn't this happening because our tools suck?
Yes the problems maybe inherently complex but at least we should be able to figure out the logic behind the snipper and reason about it.
Haven't really experienced it, but they say Haskell and the likes are great at this and it must be true because it's backed by mathematical properties and laws, not " experience".
So the rant here is, wish we had better tools in the mainstream that allowed us to enjoy absolute faith in at least what we have written, regardless of the fact that we understood the problem in the domain.11 -
This is meant as a follow-up on my story about how I'm no longer and Ada developer and everything leading up to that. The tldr is that despite over a decade of FOSS work, code that could regularly outperform a leading Ada vendor, and much needed educational media, I was rejected from a job at that vendor, as well as a testing company centered around Ada, as well as regularly met with hostility from the community.
The past few months I have been working on a "pattern combinator" engine for text parsing, that works in C#, VB, and F#. I won't explain it here, but the performance is wonderful and there's substantial advantages.
From there, I've started a small project to write a domain specific language for easily defining grammars and parsing it using this engine.
Microsoft's VisualStudio team has reached out and offered help and advice for implementing the extensions and other integrations I want.
That Ada vendor regularly copied things I had worked on, "introducing" seven things after I had originally been working on them.
In the almost as long experience with .NET I've rarely encountered hostility, and the closest thing to a problem I've had has been a few, resolved, misunderstandings.
Microsoft is a pretty damn good company. And it's great to actually be welcomed/included.2 -
My journey with IT learnings, Some of Major learning changes. The following are the years in which I start learning given technology or domain.
1993 Birth
1999 #HTML
2001 #PHP + Foxpro
2001 #Haskell language
2002 BASIC
2002 #8088 Assembly
2003 #Linux
2007 Visual #Foxpro
2009 #C Language
2010 #Python
2011 #JAVA for mobile #development
2015 Virtual Machines
2016 Networking
2018 #Blockchain
2019 #Elixir & Phoenix
2019 #DevOps19 -
My grandfather is at age 72 & don't know much about technology. He forward me this message on whatsapp bcz I'm a software engineer. He made my day...
What is the difference between http and https ?
Time to know this with 32 lakh debit cards compromised in India.
Many of you may be aware of this difference, but it is
worth sharing for any that are not.....
The main difference between http:// and https:// is all
about keeping you secure
HTTP stands for Hyper Text Transfer Protocol
The S (big surprise) stands for "Secure".. If you visit a
Website or web page, and look at the address in the web browser, it is likely begin with the following: http:///.
This means that the website is talking to your browser using
the regular unsecured language. In other words, it is possible for someone to "eavesdrop" on your computer's conversation with the Website. If you fill out a form on the website, someone might see the information you send to that site.
This is why you never ever enter your credit card number in an
Http website! But if the web address begins with https://, that means your computer is talking to the website in a
Secure code that no one can eavesdrop on.
You understand why this is so important, right?
If a website ever asks you to enter your Credit/Debit card
Information, you should automatically look to see if the web
address begins with https://.
If it doesn't, You should NEVER enter sensitive
Information....such as a credit/debit card number.
PASS IT ON (You may save someone a lot of grief).
GK:
While checking the name of any website, first look for the domain extension (.com or .org, .co.in, .net etc). The name just before this is the domain name of the website. Eg, in the above example, http://amazon.diwali-festivals.com, the word before .com is "diwali-festivals" (and NOT "amazon"). So, this webpage does not belong to amazon.com but belongs to "diwali-festivals.com", which we all haven't heard before.
You can similarly check for bank frauds.
Before your ebanking logins, make sure that the name just before ".com" is the name of your bank. "Something.icicibank.com" belongs to icici, but icicibank.some1else.com belongs to "some1else".
👆 *Simple but good knowledge to have at times like these* 👆3 -
Proudest bug squash? Probably the time I fixed a few bugs by accident when I was just trying to clean up an ex-coworker's messy code.
So I used to work with a guy who was not a very good programmer. It's hard to explain exactly why other than to say that he never really grew out of the college mindset. He never really learned the importance of critical thinking and problem-solving. He did everything "by the book" to a point where if he ran into an issue that had no textbook solution, he would spin his wheels for weeks while constantly lying to us about his progress until one of us would finally notice and take the problem off his plate. His code was technically functional, but still very bad.
Quick Background: Our team is responsible for deploying and maintaining cloud resources in AWS and Azure. We do this with Terraform, a domain-specific language that lets us define all our infrastructure as code and automate everything.
After he left, I took on the work to modify some of the Terraform code he'd written. In the process, I discovered what I like to call "The Übervariable", a map of at least 80 items, many of them completely unrelated to each other, which were all referenced exactly once in his code and never modified. Basically it was a dynamic collection variable holding 80+ constants. Some of these constants were only used in mathematical expressions with multiple other constants from the same data structure, resulting in a new value that would also be a constant. Some of the constants were identical values that could never possibly differ, but were still stored as separate values in the map.
After I made the modification I was supposed to make, I decided I was so bothered by his shitty code that I would spend some extra time fixing and optimizing it. The end result: one week of work, 800 lines of code deleted, 30 lines added, and a massive increase in efficiency. I deleted the Übervariable and hardcoded most of the values it contained since there was no possible reason for any of them to change in the future. In the process, I accidentally fixed three bugs that had been printing ominous-sounding warnings to the console whenever the code was run.
I have a lot of stories about this guy. I should post some more of them eventually.2 -
I bought a domain and need some styling suggestions.
it basically demonstrates how language barriers can hurt communication (and I want to screw over google)
so, it takes a phrase and translates it to a bunch of random languages with google translate to see how messed up it gets.
the link is:
https://translationiteration.com
READ BEFORE CLICKING: i still have an unresolved bug with php cookies and sessions so once the page loads, just press refresh ¯\_(ツ)_/¯
so now i need some styling suggestions, and advertiser suggestions (i’m thinking media.net) who respect user privacy and are contextual.
comment :)
p.s. does anyone still say advert or am I the only one ? 🙃20 -
Heya,
College is no place to chill and be laid back as shown in movies. The reality is that it is more challenging than school with peer pressure being no stranger to us.
Being a newbie in the tech domain, and being a girl, I felt the gender gap and the intimidation newbies like me go through when we see legit programmers who flaunt their skills and make it obvious that they exactly know what they are doing.
But along with all this ranting, for all the newbies out there, remember that this phase too shall pass and its not as scary as it seems (I kept convincing myself).
Always start with something easy and take baby steps, one good coding language to start with would be python, as it is more understandable and less intimidating and complex-looking than languages like C and C++.
I still struggle, but there are times when it gave me great joy like the time I developed an app with Flutter or when I managed to grab a free tee from hacktoberfest 2019.
Stay home and Stay safe buddy ;)
P.S: If you a dev and want some cool swags check the website devswag, you won't be disappointed :)10 -
Fuck C!
It sucks so badly!
Our College Teachers are Teaching this to us in the first year.
I know many of you will disagree with this.
But I like Python as I am digging into ML/AI and for this domain Python is powerful. I am trying to practice in C language but still, it sucks badly as sometimes I can't even figure out what is the error even after debugging or looking on StackOverflow. Anyways this is a good programming language because of Low TLE and versatility.
Anyways this was my thought. No offense.
This is Devrant so I Typed my frustration.33 -
The longer I work in my department, the more I grow to appreciate clients that actually know what they are doing. Or clients who have been communicating with us for so long that the emails got a little less strict and formal.
Having a client write something like "I know this mail looks scary long, but trust me, its just a few domain edits, nothing horrible" (freely-translated from my native language) just kinda... Sets me at ease and makes me chuckle.1 -
Finally developed the domain-specific language for random text generation I've been brainstorming for years. It's a pile of steaming shit, but it's MY pile of steaming shit.3
-
Started porting one application written in php to:
Golang(and some libraries to make certain sht simpler like GORM and Gorilla amongst a couple of others, most shit is STD shit already built in)
Java Spring(I know it well, but wanted to try this particular app in it, lots of boilerplate although the coded is solid AF)
.NET Core API, which I separated in a series of modules for the domain interface, the persistence logic, the actual api etc, I really dig it. It has a basic React frontend in Typescript whereas the other 2 versions are using the standard Go html/template package and the Twig interface for Spring.
My favorite thus far is Golang. I find it extremely easy to extend, the language reads good enough for a retard like myself to make sense of it fairly easy, really easy to test and experiment with it, any idea I get for something to add(say users and stuff) took me less than 30 mins to figure out while reading the actual documentation, as in the base documentation or just the source code.
I know the language is retard proof, and I am highly enjoying this. Not to say that the other two are bad, not at all, been using C# and Java for years now, but I highly appreciate being able to concentrate on functionality rather than all the fucking architectural boilerplate needed to run basic shit in the other two frameworks. Thus far Golang has been a breath of fresh air the likes Clojure gives me, while not even being a profound or mind blowing language in terms of features(since other than the interface{} and goroutines i can't think of shit) and have not reached a scenario in which I am stuck or dying to have generics one bit for the overall business logic.
The app is growing like crazy in terms of code since the original php application was huge to begin with, but dear me this shit is as simple as it can get without being too technical. Might move it to production once all usability tests pass and force the rest of the staff to learn it. I have one lead dev that damn near refuses to touch anything other than php, and a very eager to try shit out content administrator that comes from a Java and C# background.
all I want to say is how much I love go haha4 -
My DEV Story
After reading it, make a favor by ++d
Thought to be a software engineer in future
Learnt Python's basic modules, AI, and some ML
After getting intermediate in python, I started learning Java as my second language but could not do it because of JDK 8. Now don't ask me why.
Then, just stepped into game development with unity and C#, having a basic knowledge of C# with no experience in making a game myself. This is called ignorant.
After getting no success, I started learning PHP and got the chance to make a website having no content ;)
But it cannot meet my requirements
Soon I got content that AdSense regards as no content, no problem
I started learning Flask, a module in python for making web applications.
It took me 1 month to complete my website, which can convert file formats.
The idea for deploying it to the server
Sign Up to DigitalOcean
Domain Name from GoDaddy (I know NameCheap is better but got some offer from it)
Made a VPS for what I have to pay $5/month
Deploy my Flask App using WSGI server
This is the worst dev experience
.
.
.
.
Why in all the tutorial, they only deploy a flask app which displays Hello World only and not anything else
WSGI or UWSGI Server does not give us permission to save any file or make any directory in it
Every time........ERROR
Totally Fucked Up
Finally, it works on localhost with port 80
I know this is not the professional way to host a website but this option was only left.
What can I do
Now, I cannot issue a free SSL certificate through Let's Encrypt because **Error 98 Address Already In Used**
The address was port 80 on which my Flask App was running
Check it out now - www.fileconvertex.com8 -
Fuck SEO companies and their dumb fucking faces.
The SEO campany that was hired for a website by the client just asked us to implement hreflang tags.
Which at fist sounds logical, but it was requested on a website that is multi language installed (english has a .com and dutch has a .nl domain) meaning all installations target a completely different audience and to implement it correctly we would somehow have to make it automatically resolve the url? Like what the fuck do they want us to do, so we called the actual Client of the project and he's like;
"We'll wait for now as it sounds like you guys don't think it would be usefull, but I think we may need to pick it up later"
So that cleared that up for now.
In other news; One more day and then I have vacation, maybe afterwards I'll be able to not fall asleep at 6pm and sleep to 11pm only to sleep from 11.30pm to 6am6 -
Following from https://devrant.com/rants/1516205/...
My emacs journey day 0-1
0: quickly realised what I was getting myself into, wow that is a learning curve. Head is buzzing with different key commands (and thank you to everyone who's helped out in my original post). I've been here before with Vim, but it's so hard when I am proficient with another editor, one of the most difficult aspects is getting it set up to even format my code appropriately (the right tab width etc), but I press on, something tells me it will be worth it in the end.
1: I come across a tutorial for clojure and emacs (https://braveclojure.com/basic-emac...), this looks good, oh sweet it shows how to load a good configuration, some more useful commands, feels like I'm getting there. Then it hits me, I manage to put my finger on why I decided to take the plunge: emacs isn't an editor at heart, at its heart is lisp. From its core it is scripted using one of the most powerful types of languages. Rather than some bolted on domain specific scripting language.
Now the real learning begins.2 -
I like the people I work with although they are very shit, I get paid a lot and I mostly enjoy the company but..
Our scrum implementation is incredibly fucked so much so that it is not even close to scrum but our scrum master doesn't know scrum and no one else cares so we do everything fucked.
Our prs are roughly 60 file hangers at a time, we only complete 50% of our work each sprint because the stories are so fucked up, we have no testers at all, team lead insists on creating sql table designs but doesn't understand normalisation so our tables often hold 3 or 4 sets of data types just jammed in.
Our software sits broken for months on end until someone notices (pre release), our architecture is garbage or practically non existent. Our front end apps that only I know the technology have approaches dictated by team lead that has no clue of the language or framework.
Our front end app is now about 50% tech debt because project management is so ineffectual and approaches are constantly changing. For instance we used to use view models for domain transfer objects... Now we use database entities, so there is no commonality between models but the system used to have shared features relying on that..sour roles and permissions are fucked since a role is a page regardless of the pages functionality so there is no ability to toggle features, but even though I know the design is fucked I still had to implement after hours of trying to convince team lead of it. Fast forward a few months and it's a huge cluster fuck to enforce.
We have no automated testing of any sort or manual testing in place.
I know of a few security vulnerabilities I can nuke our databases with but it got ignored.
Pr reviews are obviously a nightmare since they're so big.
I just tried to talk to scrum master again about story creation since any story involving front end ui as an aspect of it is crammed in under one pointed story as sub tasks, essentially throwing away any ability to calculate velocity. Been here a year now and the scrum master doesn't know what I mean by velocity... Her entire job is scrum master.
So anyway I am thinking about leaving because I like being a developer and it is slowly making me give up on doing things to a high standard and I have no chance of improving things, but at the same time the pay is great and I like the people. -
!rant / Joke
RoR dev (Me): Damn, I gotta learn more about that routing DSL... Shit's powerful.
Networker: That sentence made zero sense... Did you just use technobabble? Go to marketing you dweeb.
Well, Matz really trolled the networkers there...
Ruby/Rails:
DSL(Ruby) = Domain Specific Language.
Routing (Rails) = Defining URL Patterns and assigning them to controllers.
Networks(As far as I understand, I only know the absolute basics there):
DSL = Digital Subscriber Line
Routing = The act of passing a packet through another network
"Oh, you can't help that," said the Cat: "WE'RE ALL MAD HERE. I'm mad. You're mad."
And the weird penguin building a rails app is mad too I guess.1 -
I'm hurtling down the Dunning Kruger slope in Rust datastructure design. The orchidlang crate has a struct that attempts to wrap and replicate a slice for no reason other than to attach some domain-specific methods and a custom Display implementation. I came up with 4 different representations for a file URI as provided by the language client. The most recent one holds a singular string in an Arc. I know that these are bad ideas but I don't know why I keep coming up with them.6
-
!Rant
#serious inputs needed
I need help identifying that one big problem that all devs face. Irrespective of the language, domain, etc.. And I wanna solve it. I need your inputs on what bothers you the most, and what tech you work with.. Then we can upvote the comments that are applicable to all of us.. I'll setup a github once we come to a conclusion2 -
Experimented with embedded Rust. Fuck that. C is a brilliant small language. Trustworthy. Rust is just C++ killer, it doesn’t belong in embedded domain. Bloated syntax, verbose error handling, crap quality crates with little to no documentation.18
-
I am pursuing master in computer applications, So please give career advice for which language should i master for a long term perspective in this domain??8
-
Sydochen has posted a rant where he is nt really sure why people hate Java, and I decided to publicly post my explanation of this phenomenon, please, from my point of view.
So there is this quite large domain, on which one or two academical studies are built, such as business informatics and applied system engineering which I find extremely interesting and fun, that is called, ironically, SAD. And then there are videos on youtube, by programmers who just can't settle the fuck down. Those videos I am talking about are rants about OOP in general, which, as we all know, is a huge part of studies in the aforementioned domain. What these people are even talking about?
Absolutely obvious, there is no sense in making a software in a linear pattern. Since Bikelsoft has conveniently patched consumers up with GUI based software, the core concept of which is EDP (event driven programming or alternatively, at least OS events queue-ing), the completely functional, linear approach in such environment does not make much sense in terms of the maintainability of the software. Uhm, raise your hand if you ever tried to linearly build a complex GUI system in a single function call on GTK, which does allow you to disregard any responsibility separation pattern of SAD, such as long loved MVC...
Additionally, OOP is mandatory in business because it does allow us to mount abstraction levels and encapsulate actual dataflow behind them, which, of course, lowers the costs of the development.
What happy programmers are talking about usually is the complexity of the task of doing the OOP right in the sense of an overflow of straight composition classes (that do nothing but forward data from lower to upper abstraction levels and vice versa) and the situation of responsibility chain break (this is when a class from lower level directly!! notifies a class of a higher level about something ignoring the fact that there is a chain of other classes between them). And that's it. These guys also do vouch for functional programming, and it's a completely different argument, and there is no reason not to do it in algorithmical, implementational part of the project, of course, but yeah...
So where does Java kick in you think?
Well, guess what language popularized programming in general and OOP in particular. Java is doing a lot of things in a modern way. Of course, if it's 1995 outside *lenny face*. Yeah, fuck AOT, fuck memory management responsibility, all to the maximum towards solving the real applicative tasks.
Have you ever tried to learn to apply Text Watchers in Android with Java? Then you know about inline overloading and inline abstract class implementation. This is not right. This reduces readability and reusability.
Have you ever used Volley on Android? Newbies to Android programming surely should have. Quite verbose boilerplate in google docs, huh?
Have you seen intents? The Android API is, little said, messy with all the support libs and Context class ancestors. Remember how many times the language has helped you to properly orient in all of this hierarchy, when overloading method declaration requires you to use 2 lines instead of 1. Too verbose, too hesitant, distracting - that's what the lang and the api is. Fucking toString() is hilarious. Reference comparison is unintuitive. Obviously poor practices are not banned. Ancient tools. Import hell. Slow evolution.
C# has ripped Java off like an utter cunt, yet it's a piece of cake to maintain a solid patternization and structure, and keep your code clean and readable. Yet, Cs6 already was okay featuring optionally nullable fields and safe optional dereferencing, while we get finally get lambda expressions in J8, in 20-fucking-14.
Java did good back then, but when we joke about dumb indian developers, they are coding it in Java. So yeah.
To sum up, it's easy to make code unreadable with Java, and Java is a tool with which developers usually disregard the patterns of SAD. -
Context:
At work, I code primarily with Java.
I'm a big believer in the mantra, "if it ain't broke, don't fix it", but I find myself conflicted with that when I can see how much of an improvement it would be to use a different language for some of the simple pieces in our integration.
Question:
When should one start considering other languages for your team? And if you choose other options, how do you do it in such a way where you don't end up building a chimera of an integration?3 -
Had to work with SoapUI and accidentally taught myself Groovy.
I found Groovy a very nice language to work with. I've always wanted to do things with the JVM but still don't fully comprehend Java's OOP and stuffs. In which domain is Groovy used widely or intensively? Would anyone recommend me to learn it further?5 -
We need a domain specific language for AI that is tailored for big data. So many tools are just not scalable to the size needed for these massive AI problems. It needs to be able to conceptualize and handle the fattest data in the industry.
We should call the language: Your Mom2 -
Okay. Here's the ONLY two scenarios where automated testing is justified:
- An outsourcing company who is given the task of bug elimination in legacy code with a really short timeframe. Then yes, writing tests is like waging war on bugs, securing more and more land inch after inch.
- A company located in an area where hiring ten junior developers is cheaper than hiring one principal developer. Then yes, the business advantage is very real.
That's it. That's the only two scenarios where automated testing is justified. Other such scenarios doesn't exist.
Why? Because any robust testing system (not just "adding some tests here and there") is a _declarative_ one. On top of already being declarative (opposed to the imperative environment where the actual code exists), if you go further and implement TDD, your tests suddenly begins to describe your domain area, turning into a declarative DSL.
Such transformations are inevitable. You can't catch bugs in the first place if your tests are ignorant of entities your code is working with.
That being said, any TDD-driven project consists of two things:
- Imperative code that implements business logic
- Declarative DSL made of automated tests that also describes the same business logic
Can't you see that this system is _wet_? The tests set alone in a TDD-driven project are enough to trivially derive the actual, complete code from it.
It's almost like it's easier to just write in a declarative language in the first place, in the same way tests are written in TDD project, and scrap the imperative part altogether.
In imperative languages, absence of errors can be mathematically guaranteed. In imperative languages, the best performance (e.g. the lowest algorithmic complexity) can also be mathematically guaranteed. There is a perfectly real point after which Haskell rips C apart in terms of performance, and that point happens earlier on than you think.
If you transitioned from a junior who doesn't get why tests are needed to a competent engineer who sees value in TDD, that's amazing. But like with any professional development, it's better to remember that it's always possible to go further. After the two milestones I described, the third exists — the complete shift into the declarative world.
For a human brain, it's natural to blindly and aggressively reject whatever information leads to the need of exiting the comfort zone. Hence the usual shitstorm that happens every time I say something about automated testing. I understand you, and more than that, I forgive you.
The only advice I would allow myself to give you is just for fun, on a weekend, open a tutorial to a language you never tried before, and spend 20 minutes messing around with it. Maybe you'll laugh at me, but that's the exact way I got from earning $200 to earning $3500 back when I was hired as a CTO for the first time.
Good luck!6 -
1) DevGoogle - Google but all queries assume programming sense of query. Also option to add preferred language(s)
2) a universal file system so that my pen drive works on all devices
3) Firewall filter unblocks my personal domain (currently classified as 'Newly Observed Domain') -
The more I work with programming languages the more i feel like it's a big mistake to build functionality into the language. Especially functionality to extend the language, we developers have no fucking clue of how to write DSL languages that interact well with other developers code. We can not deal with the power!
Keep languages simple and extensibility very restricted, domain functionality belongs in libraries.
Also #deathtoframeworks5 -
Heres a truly vitrolic and unnecessary rant:
Package control for sublime is all well and good
through the command palette, but it's just
fucking retarded. How about you point me to a
FUCKING COMMAND to actually INSTALL A
MOTHERFUCKING PACKAGE YOU
FINGERPAINTING FUCKWITS?
Under babel plugin while browsing packages
on packagecontrol.io:
"Find it as Babel through Package Control."
FUCKING HOW?
What command?
What fucking command? How do I "Find" it?
The browse command just opens my
motherfucking browser. How do I fucking install
your fucking packages you assholes?
"Use autocomplete" except your god damn
autocomplete doesn't list "install package"
for some god damn reason because everything
web is a broken pile of utter shit, built
on a more shit, like a leaning garbage tower
of bullshit waiting for the smallest mistake to
take down the entire house of cards like
someone removing a leftpad on npm.
Maybe specify I have to enter
"install package" and THEN hit enter, and THEN
enter the GOD DAMN MOTHERFUCKING package name
on a separate god damn line for
some fucky reason.
Next time don't make a tool that breaks
motherfucking conventions. It's bad enough
every fucking look-at-me-im-smart cunt of a
dev and their dog has to invent a CLI and
then go and invent a new domain specific
language too motherfuckers.
Next tool that breaks convention around me is
gonna see the dev lit on fire.
fucking uppity cunts.
"Say thanks" the site say. I am not
feeling fucking thankful at the moment.
The least you can do if you're going to
contribute to open source, is not make things
actively fucking worse, least of all in the
fucking *documentation*.
FUCK count for this rant: 19 / 50,
RANK: RUSH HOUR TRAFFIC
0-5: GENTLE AS A LAMB
6-10: ANGRY GOAT
11-15: NUN WITH PMS
16-20: RUSH HOUR TRAFFIC
21-25: CANTANKEROUS VIETNAM VET
26-30: BREAKING SHIT
31-35: DOMESTIC DISTURBANCE
36-40: BIPOLAR EPISODE
41-45: DESPAIR EVENT HORIZON
46-50: BROKEN CAPSLOCK
50+ : MIDLIFE CRISIS / MASTER GRAND WIZARD
OF RANTS AND ANGRY-WORD MASTURBATION.
If you prefer to cheat, you may also include any
cursewords in general, but be warned, you'll
never know the sweet taste of victory when you
achieve the rank of master grand wizard.
Like when you were a kid, and you discovered
gameshark, and all your hopes of finishing that
one game became but a ruthlessly hollowed out
husk, somewhere where could-have-been childhood
memories and nostalgia go to die like the
graveyard of dreams
(the same place officer workers souls go).4 -
I have to make a domain-specific language for one of my classes (we will be working on it for the next two semesters) but I can't think of anything to do, do you guys have any ideas?5