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 - "the library is awesome"
-
OH MY GOD, MY TEACHER DOES NOT TEACH MY FAVORITE LANGUAGE!
I've seen a lot of rants about teachers who use an outdated language, or don't accept the preferred framework or library of the ranter, or even force students to use a technology or even worse an OS they don't prefer.
Whats with that attitude?
I absolutely encourage young people to learn technology in their free time and it absolutely helps at building a career and become good at programming. I don't think being around 18 and never having worked in a real job is the time to select "the most superior language and technology".
Actually, that time is never.
Technology is evolving all the time and different tech evolves in different paths for different purposes. Get rid of the idea, that there is a "best" and get rid of the idea, that you will always be able to work with what you think is best.
If you're really really really awesome, you can chose to do what you like most. Not awesome as in "i learned programming in my free time, now i'm better than my programming-for-beginners-course teacher" but awesome as in "start my own company and can afford to only take the jobs i feel like doing", that awesome. Most likely, you're not (yet).
In the real world, you will very likely sometimes be required to work with technology you don't prefer. Maybe with something you think is really bad. Probably, it's not that bad. More likely, you read it on the internet from someone whose self-image is based on on loving TechA and hating TechB. A lot of much hated technology is at least okay for it's intended use. Maybe not the most pleasant time you will ever have, but no reason to jump out of the window. Hey, and if you get used to it, you may even start to like it. At least, learn to retain some dignity when confronted with things you don't like.
You can still think that one thing is better than another, but if you make a huge drama out of it, you just make it harder for yourself. The best programmer is the one who get's shit done, not the one with the saltiest tears.14 -
So I've been playing some DnD with friends.
And we've been working with some lego characters, whiteboard markers and plastic sheets to draw on.
But that's always a mess:
The ink was old and did not come off again for the most part
The sides of the map curled up and and made the lego character fall over
The lego characters were too big
And more...
So I thought, why not make it digital?
And so I did.
I used UWP to make a master and a client, both using the Windows Ink api to be able to draw.
Some circles with an initial served as characters, and everything was synchronized using a TCP library I wrote half a year ago.
Yesterday we tried it out.
We all (including me) were sceptical if it would work well because the 'analog' clumsy way we did it before does have a certain charm.
But at the end we were all very enthousiastic about it and we'll be using it next time too!
It's awesome to be able to create programs for your own use :D
That's why being able to program is such a great thing!
Now I need to restructure everything, make it more efficient, add a turn order display, make the map zoom- and moveable and more and more....20 -
Alright, so my previous rant got a way better response than I expected! (https://devrant.io/rants/832897)
Hereby the first project that I cannot seem to get started on too badly :/.
DISCLAIMER: I AM NOT PROMOTING PIRACY, I JUST CAN'T FIND A SUITABLE SERVICE WHICH HAS ALL THE MUSIC I WANT. I REGULARLY BUY ALBUMS. before everyone starts to go batshit crazy regarding piracy, this is legal in The Netherlands for personal use. I think that supporting the artists you love is very good and I actually regularly pay for albums and so on but:
- I want all the music from about every artist in my scene. Either on Deezer or on Spotify this is not available and I'm not gonna get them both (they both have about half of the music I want). Their services are awesome but I'm not going to pay for something if I can't listen to all the music I like, hell even some artists (on deezer mostly) only have half their music on there and it's mostly not better on Spotify.
- I'd happily buy all albums because I love supporting the artists I love but buying everything is just way too fucking much."Get a premium music streaming subscription!" - see the first point.
You can either agree or disagree with me but that's not what this rant is about so here we go:
The idea is to create a commandline program (basically only needs to be called by a cron job every day or so) which will check your favourite youtube (sorry, haven't found a suitable non-google youtube replacement yet) channels every day through a cronjob and look for new uploads. If there are, it will download them, convert them to MP3 or whatever music format you'd like and place them in the right folder. Example with a favourite artist of mine:
1. Script checks if there are any new uploads from Gearbox Digital (underground raw hardstyle label).
2. Script detects two new uploads.
3. Script downloads the files (I managed to get that done through the (linux only or also mac?) youtube-dl software) and converts them to mp3 in my case (through FFMPEG maybe?).
4. Script copies them to the music library folder but then the specific sub-folder for Gearbox Digital in this case.
You should be able to put as many channels in there as you want, I've tried this with the official YouTube Data API which worked pretty fine tbh (the data gathering through that API). The ideal case would be to work without API as youtube-dl and youtube-dlg do. This is just too complicated for me :).
So, thoughts?43 -
~2 years ago:
Me: Managed to figure out how to port that library. Just need designs and then we can build feature X. I've tested it in ugly developer-y screens. It works fully
Boss: Thats awesome, saw the video, looks great. This is a really important feature, thanks for looking into this
~1.5 years ago:
Me: Ok i've started working on the designs, just FYI we don't have designs for feature X
Boss: Ok, must have slipped, noted
~1 year ago:
Me: I've seen more posts about users wanting apps with features X in it. Still don't have designs, we working on that?
Boss: I'll check with design
~3 Months ago:
Boss: Ok were going to have to get serious about pulling features out and reducing MVP so we can get this out there. I think feature A, D, Y and X have to be dropped for v1. Theres too much left to do on them
Me: sure
~1 week ago:
Boss: We need to start getting ready for xxxxx. Can you do me a favour and start writing up some developer docs etc, kind of like this one we did for this other project
This morning opening my emails from last night:
Boss: I've reviewed the doc, looks good, only minor things need tweaking. Let me ask you something though, you said feature X was pulled out and its "pending design work". Its not only pending design work is it? Is it that far along?
==========
What I actually replied:
Yes ... i've sent you videos of it functional in the past, and discussed this ... more than once. Just design ... and some testing of the new designs obviously
==========
What that meant:
Yes. May god have mercy on your soul if you reply anything even remotely close to "oh I had no idea, lets revisit adding this to v1". I will not be held accountable for my actions1 -
Been really busy with things haven’t got around to posting a book in like a week or so..
But I’ll post one today..
This book...
This book, available for free online or you can buy it, written in 1994. But so under appreciated by people for some reason most people never have seen it or know about it. But this is the ONLY book I know of that actually covers this topic.. the only book in existence that specifically goes thru how OOP can be done with C.
NOW hold up before you say just use C++ stop and think for a second.. bear with me.
First off this book is purely for informational purposes and educational use to deepen your understanding of what OOP is actually doing behind the scenes in languages like C++ where keywords exist for these things and you just blindly use them without thinking about under the hood.
This book contains a lot of code and builds you up a complexly library from scratch to make OOP in C... now I don’t take this book literally and this but I have implemented some concepts from this book in projects in the past, and it helps a lot.
Also in my honest opinion If you finish this book, you will be a better C programmer AND c++ programmer, C programming because it teaches you a lot about complex things that you never thought about doing with the language. It proves you can do polymorphism can do inheritance and encapsulation. And it’s not really bloated either.
This books is an awesome book, if you don’t understand C pointers you definitely will after this book.. if you don’t understand OOP in C++ what’s really going on.. you will after this book. After all C++ began as just a preprocessor of C.
Great book for writing reusable, extendable large scale embedded c systems.
Anyway.. rare book of which should not be rare considering it’s free.3 -
Just found out about Yue, a GUI library for Node.js, Lua and C++ (and owners of the "gui" package on npm).
It is so awesome! The RAM usage is so low compared to Electron! Of course it has its limitations and doesn't use HTML + CSS + JavaScript, but you can still build really good applications with it!
I'll show you what I'm making at the moment soon, so stay tuned!
Anyways I've built the same application in Electron and Yue, here's the comparison of the RAM usage:16 -
After work and everyday I used all the free/lowcost learning resources i could get my hands on. GRIND, GRIND, GRIND! Never give up! I used to come home after working construction from 7am to 9-11pm, shower, code til 3am, repeat. I didnt have the luxury of a single day off for months on end. Even an hour a night is one hour closer to your dreams each day 🖒🖒🖒
Learning:
https://www.edx.org/
https://ocw.mit.edu/courses/
https://www.lynda.com/
https://www.udemy.com/
https://app.pluralsight.com/library...
https://stacksocial.com/deals/...
https://www.youtube.com/
Random Practice:
https://www.hackerrank.com/
https://www.codingame.com/
Also to keep you/me motivated I made an awesome high spirited music playlist, look at your life then look at the music videos and realize as a developer that could be your reality. God Bless!
Code Music: https://youtu.be/xp2qjshr-r4/...1 -
I’m most proud of my first website. Just plain html and css. It was the first time I was introduced to GitHub too. I was taking a class at the library. The teacher was the best because she showed the students how to find resources for web development and told us to don’t bother looking at the out of date workbooks. The students were cool too. It was great to be in a small class and see people of different ages learning how to code.
-
What I'm doing now, writing a JS library for a simple kitchen timer (like, something that can be wound up, is ticking, can be paused, etc). Here's a list of neat stuff I've learned:
Polyfilling as a lib author (I decided against it).
Packaging the lib (using Rollup, ES6 modules are totes cool).
Using flow to add static typing in strategic places (started appreciating types in JS since reading up on functional programming).
Modelling state and transitions using an explicit state machine. (Fucking finally. There's usually an implicit state machine somewhere, only spread out all over the app...)
Using mostly side-effect free methods, being very explicit about when and why things are mutated).
Test-first/TDD (ish) using Jest and the awesome Wallabyjs.
Freeing up mental capacity by letting Prettier format my code for me (it was hard to let go but totally worth it).
Started using git.
Did all work on Ubuntu after pretty much a lifetime of Windows (initially to separate work from gaming) and finally swapped MS Visual Studio for Atom.
When it's finished I'm going to publish it on GitHub, which will also be a first for me. Might try out some CI platform while I'm at it.
tl;dr: wrote some js, felt good2 -
JavaScript libs have a massive problem with quality and especially with quality of documentation and error reporting
For the entire day I've been staring at this stupid error and can't figure it out. The documentation stating that the source function sets the source dir, but not actual saying what 'source dir' means or what paths are resolved against it is no help either
npm is actually really awesome but almost every library I've tried just fucking sucks3 -
I'm a huge js fanboy who hates this library storm going on.. but ffs vue.js is awesome. I mean.. you .. just.. use it. You know? An oldschool script tag to include it and you're ready to go! And it's easy and it works beautiful. When did a js lib deliver that in the past 3 years.😁1
-
So just babbling my shit down here.
(Tldr : i am a crazy guy who followed my half slept brain, went onto a stage , gave some kind of motivating , stammering talk to a large group of professional strangers, enjoyed that day with a red embarrassed face and just got my first pic of me speaking on stage and that is so awesome !)
Last Saturday i went to a gdg meetup and i embarrassed the hell out of me.
I went there with just 2 hours of sleep from the previous night.
After a few talks there comes a guy who is taking some time to install is setup and the host calls for lightning round session ( ie he asks if anyone from the audience would like to share something about their product or something).
I am a fucking nutt guy. I can explain something to you nicely in a hacky way as long as i have done enough work on that and you speak my native language.
But giving a talk on English stage, hell no! I stammer, mix hindi with English and start speaking werd shit.. And that's what happened.
I don't know what went into me but as some guy went to the stage and talked for 2 mins, i was like yeah i want to do that too. So in next turn when he asked for a show of hands, i raised mine and fucking went to stage!
I forgot that if you go on stage you should have something to talk to . But the moment i was on stage, i was like... "Nope, we will do this differently".
I had been working on a video ads module from the last week which could be easily explained in 2 mins. But i felt like giving a non techy talk instead.
It went something like this: i introduced myself with my experience details ( who gives experience details on stage !?!) Then host said to speak loudly and i went like "Bharat mata ki jai!"( Victory to mother india (wtf!?😆) .
Then started talking about how the developers feel disheartened when searching on internet where the resources are scattered . And the solution i told them was :"don't be disheartened. You will eventually find it (like wow dude wtf, as if they didn't knew that) . Look on the youtube and other resources " and then went full on explaining/marketing about some online tutor who gives advice/consultancy via a subscription based payment ( tbf that guy really helped solve a lot of my doubts, he has written books on Android dev and is the top so answerer for Android).
Then i went on sharing my thoughts live on that fuckin stage ! ( Live because i usually post my thoughts here on devrant before discussing them out with real people, you guys are my safe space) but there i discussed my thoughts on libraries!
I have this believe that Android devs these days are having lesser knowledge of the system because we have all the libraries and templates available to us. But when we have to customize stuff, we need to go deep into docs and source classes and find ourselves in trouble there. So i kind of said this out loud and that we should try to read more the code and implement stuff ourselves instead of using the library 😅🙈)
I was feeling so fucking embarrassing after that all stuff! It was so full of stammering , broken English and worst attempt at motivation. At that time i was regretting this and about to burst cry and run away, but somehow i gathered my self, got my mood back to the event games and talks, later went to the organizers and apologized(and they were very nice and didn't cared about it), and overall enjoyed my weirdest day!
When i came home, my mom gave me a little more confidence about it. Now i think i shouldn't be that much instinctive. Next day i went hack to work and everything got normal.
But Yesterday i found a link to the public repository of the photos. Ohh fuck, someone had took my image! and that was too in full hd!!! 🙈🙈🙈😅😆😆 Oh mann I can't stop looking at that cool stage speaker image, i love it ! I, the shy-est and the most uncool awkward person , present on the stage with a mike, oof , i think i lived my dream !
I hope i could get enough confidence and speaking skills to take a real stage talk next time ( and maybe enough interesting talks and confidence to talk with girls of our office, ¯\_(ツ)_/¯ )5 -
!rant but question to you experts:
Hey, guys. I'm currently trying to up my game in terms of web development. I already know js, html, php and css quite well (enough to become a tutor at my university) but I'm not shure which frameworks (serverside and clientside) are worth considering. Until now I wrote everything from scratch, which is not very sustainable (waaaay to much code to maintain)
Could you please tell me your softwarestacks, what library to use, which frameworks to learn (Vue/React/Angular/...)? Every opinion is very appreciated and won't go unheard. Thanks in advance.
btw: you guys are the nicest people I ever met online. Thank you for being so awesome.1 -
Python ecosystem drives me nuts!
Not the language tho, i kinda like it, and some features are damn straight awesome.
But ecosystem... man!
The way ppl write code in it, the lack of documentation (or in quality of it)...
I recently wanted to check how library does one thing (debug purposes), and not only i had to track some method up 3 classes, the other method i hunted only by signature and still i have no idea how it ends up being accessible where it should...
"Explicit is better than implicit" my ass...
Also dev managed to make the code very unreadable. In Python. Language with such strong opinions about code formatting. HOW ?!!
And the worst part is, it wasn't that big of a library and didn't really need the full freaking Enterprise OOP treatment with layers over layers of generally named classes and fucked up architecture.
FUCK THAT LIB, FUCK THAT DEV, FUCK IT ALL !!!
PS.
Project seems to be abandoned for a year or two, so there is hardly an option to fix things with the author sadly :(3 -
So,
Im coming from PHP. I feel comfy around PHP.
I needed for other project GO lang (there is no library for what I need to do in PHP, and it's low level thing anyway)
I need dependency that is in form of modules.
Okay, so importing it (just writing import "github.com/blah/blah/v3/blah" as suggested in docs did not work. something something, not found)
Some googling later, I created go.mod file.
And all the hell broke lose. So I am trying to fix that using random stack overflow, IDE highlights entire project on red, go complains it can't find "./" while it looks for it in gopath not project files and claims it's remote repository.
Among other WTFnessness after adding go.mod it suddenly stopped fetching ANY dependencies (including stuff like github.com/pkg/errors ), so, that's fun...
I added go.mod before 9 AM.
It's 13 and Im still wrestling with this
I fail to connect the dots why go lang get's so much praise for it's apparently awesome or something package managment... I find "composer install", and have pretty much guarantee it will work, much easier to wrap my head around.
[edit]
forgot to mention that Im literally starting to learn go. Just cherry on top5 -
Is there something you find genuinely cool and would recommend ? Some webpage, program, OS, library or anything ?
I mean hey. There are SO MANY reaaaally cool things I didn't know until last few months.. Things I'd be so grateful for if I knew them earlier. I'll list some of them and I just know you have few of yours too. Feel free to educate the rest!
Processing - Program so fun to code in + CodingTrain(YTB channel)
Microcorruption.com - so freaking awesome if you wanna learn hacking / assembly (not x86 necessarily)
LiveOverflow - cool hacking channel
Radare - cool cmd Linux disassembler
vim-adventures.com - LEARN VIM (not just how to quit it) LITERALLY by playing a game!!!!!!!!!!!!!!
slashdot - stay updated , like really
"BEST-WEBSITES-A-PROGRAMMER-SHOULD-VISIT" - GUYS THIS! Sorry for caps but search this on GitHub and you will fucking die of happiness of how freaking useful links there are and no bullshit to dig through , just pure awesomeness. REALLY
HandBrake - Top media converter without bullshit and bloat stuff in it
Calibre - Best eBook management software capable of literally everything ebooks related. Kindle is a bloated joke compared to this
QubesOS - You know you can have every OS running at once - you have a Linux but are playing win games. Yup. It's there. Free
Computerphile - You all know it, it's just for completeness
Khan Academy - Same
VulnHub - download vulnerable VMs and hack them, or learn by reading writeup on how to do it!
Valgrind - MUST HAVE for C/C++ programmers
Computer Science crash course videos
That's all I can think of from top of my head but hey, there's more to it so definitely add your 2 cents!
Last thing, if nothing, just check the websites on GitHub, that's lifechanger
Looking forward to see some cool links & recommendations!2 -
Finding an awesome new library / framework then finding the documentation is all "this is what it is" rather than "this is how you use it" *sigh*2
-
Question to all JS Frontend Devs: What light and performant library can you recommend me today?
I'm a C++ dev who is a bit anxious about performance, load times etc. and before I stuck my nose into vanilla js, maybe there is something better/faster. I'm a total frontend noob, e.g. I heard that html tables aren't a thing anymore and that I should use divs?
My task is quite simple, I want to give the users the ability to press some buttons and drag and drop stuff around instead of modifying the URL per hand :/
So if someone could point me in the right direction, that would be awesome!16 -
TL;DR: Computers and I go way back, but I don't know how I ended up as a dev - and am still not certain that's what I want to do for the rest of my life.
Rewind to the early 80's. My friends at the time got the Comodore 64 one after the other. I never got one. Heck, we didn't even have a color TV back then. Only a 12/14" small B&W TV. It's easy to conclude that I spent a lot of time at my friends'.
Back then it mostly was about the games. And, living in the rural countryside, the only way to aquire games was to pirate them. Pirating was big. Cassette tape swapping and floppy disk swapping was a big deal, and gamers contacted eachother via classifieds sections in newspapers and magazines. It was crazy.
Anyways. The thing about pirated games back then is that they often got a cracktro, trainer, intro or whatever you want to call them - made by the people who pirated the game. And I found them awesome. Sinus scrollers, 3D text, cool SID-tunes and whatnot. I was hooked.
My best friend and I eventually got tired of just gaming. We found Shoot'Em-Up Construction Kit, which was an easy point-and-click way to create our first little game. We looked into BASIC a bit. And we found a book at the library about C64 programming. It contained source code to create your own assembler, so we started on that. I never completed it, but my friend did.
Fast forward through some epic failure using an Amstrad CPC, an old 486 and hello mid 90's. My first Pentium, my first modem and hello Internet! I instantly fell in love with the Internet and the web. I was still in school, and had planned to enter the creative advertising business. Little did I know about the impact the web would have on the world.
I coded web pages for fun for some years. My first job was as a multimedia designer, and I eventually had to learn Lingo (Macromedia Director, anyone?) And Actionscript.
Now I haven't touched Flash for about 7 years. My experience has evolved back to pure web development. I'm not sure if that's where I will be in the future. I've learned that I certainly don't know how to do everything I want to do - but I have aquired the mindset to identify the tasks and find solutions to the problem.
I never had any affiliation with the pirate scene or the demo scene. But I still get a little tingling whenever I see one of those sinus scrollers. -
I am frustrated with the JWT token based authentication library I am using for my lumen(laravel) based backend. It is having lot of ongoing issues with infinite timed token(mobile apps) and others... Here is the link
https://github.com/tymondesigns/...
If anyone has any suggestions for a good replacement for this it would be awesome because this is shitty in the support for the library nobody addressed the issues raised and threads are not even taken care about. It is so frustrating when you implement something but have to deal with the shortcomings of it, when it does not even do some basic things it is supposed to do. I feel bad saying it for somebody else's work. But, sometimes it has to be ranted out... That's the whole point of devRant. So yeah JWT based authentication library suggestions for laravel based backend. Because tymon-auth is shit.1