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 - "something todo"
-
Me and my love-hate Linux.
I lost virginity really early. In the age of 5 it was my first time with windows 95. I spend almost 10 years with Windows before something happened that would change everything. I met Linux. Her forename was Arch. I had a crush on her right from the beginning. It didn't take long for me to abandon windows. Arch had everything I wanted. She had latex which was pretty hot and looked simply and elegant on her. Sometimes she was really hard to deal with and almost drove me crazy, but I knew I fell in love.
Until that day. I had to write a short paper which was quite fun and Linux helped me alot. It was a breeze to work with her. The evening before the deadline she was quite thoughtful. She sometimes was, so I thought it'll be alright, but this time was different. She struggled a bit, so I put her to sleep and she never woke up. I brought her to the emergency lab which was open 24/7. Since no one was there I had todo the surgery myself. After 5 hours I was almost to tired to continue when she finally woke up. I asked her about the things she should remember for me - then I killed her. I started to hate Linux for what she had done to me. The unbelievable stress and horror.
I returned to Windows. Besides that she got a bit more curious what I was doing when and where nothing really changed and she was glad to have me back. I just was happy how simple our relationship was.
One day then, I couldn't believe it at first, I met Archs sister. Manjaro. No matter how strange that is, but it was as if I would meet Linux again for the first time. She was just a bit simpler but as flexible as arch. Since then we are happy together. It seems that we both just grew up a little.
And with Windows? She got even more curious! Actually I have the feeling she is stalking me now, but I don't regret anything!15 -
So before I resign from my job tomorrow I thought I'd talk a little about a couple of things at work that I won't ever tell my boss in person but are generally some of the reasons I want to leave.
---------- warning long rant ----------
1. The CEO of the company finds out I only have my learner's and take the bus, goes on to belittle me about taking the bus.
(It may have been meant as a joke but I was offended, and we don't have any actual HR to complain to)
First off my real reason for not getting my restricted is mostly related to the fact public transportation does the job it needs to, I don't really complain unless the planning is fucked up (Adele concert rant lol) but typically I don't need a car. The other reason is because with a car I'd have to wait in traffic 1-2 hour each way. Also cars cost money which I don't have.
2. CEO buys himself and general manager brand new Range Rovers, you know those giant monstrosities box jeep looking things.
I hate this because I earn $31k, those things probably cost around $50 each (so typically 3 years worth of my wages).
When I had a talk about my contract at the 6 month mark, the general manager (my boss) said he wouldn't budge on my salary (yet they buy these jeeps)
3. I live way too far from work and because of it being Auckland and the current inflation for house prices, the rent prices have also increase, I wouldn't be able to get a house closer to home nor rent with minimum wage :(
4. Though it's not too necessary they mask that the app was made by me, whenever I see an email about the app to potential clients they refer to be as this app guy, and during their presentations they don't really include as part of the reason this app has been developed ( aside from my boss being the client, I came up with some interesting ideas to turn their paper form of the process they use into a digital one, I also did research for the specific topics, something I could have just asked for instead).
5. Old fashioned way of looking at so called "IT", they added fixing computers to my contract which I dread, especially since I'll be close to a deadline and then I get a call to fix someone's computer...
6. They don't seem to want to expand their "development team" to more than one person.
When I give my resignation I have to stay here for a month and I bet people will start to act differently around me, my likely my boss and the CEO. I think the other people that work will understand, given my situation.
I'm planning to for the last month to only do planning for the app they want me to work on, UML diagrams, use cases, Sprint planning (albiet, only developer here lol). Research on the third party libraries we need for the app and generally give the next guy the easiest path to getting the app done.
I want to do this because the Android and iOS app we're done via cowboy programming in a sense. (I don't have too much in terms of documentation and planning aside from a Microsoft planning website setup with to-do of which features are done for the iOS and paper Todo for the Android app.
Alright long rant over, I've got it all written down, glad I'll be leaving this place.51 -
Still trying to get good.
The requirements are forever shifting, and so do the applied paradigms.
I think the first layer is learning about each paradigm.
You learn 5-10 languages/technologies, get a feeling for procedural/functional/OOP programming. You mess around with some electronics engineering, write a bit of assembly. You write an ugly GTK program, an Android todo app, check how OpenGL works. You learn about relational models, about graph databases, time series storage and key value caches. You learn about networking and protocols. You void the warranty of all the devices in your house at some point. You develop preferences for languages and systems. For certain periods of time, you even become an insufferable fanboy who claims that all databases should be replaced by MongoDB, or all applications should be written in C# -- no exceptions in your mind are possible, because you found the Perfect Thing. Temporarily.
Eventually, you get to the second layer: Instead of being a champion for a single cause, you start to see patterns of applicability.
You might have grown to prefer serverless microservice architectures driven by pub/sub event busses, but realize that some MVC framework is probably more suitable for a 5-employee company. You realize that development is not just about picking the best language and best architecture -- It's about pros and cons for every situation. You start to value consistency over hard rules. You realize that even respected books about computer science can sometimes contain lies -- or represent solutions which are only applicable to "spherical cows in a vacuum".
Then you get to the third layer: Which is about orchestrating migrations between paradigms without creating a bigger mess.
Your company started with a tiny MVC webshop written in PHP. There are now 300 employees and a few million lines of code, the framework more often gets in the way than it helps, the database is terribly strained. Big rewrite? Gradual refactor? Introduce new languages within the company or stick with what people know? Educate people about paradigms which might be more suitable, but which will feel unfamiliar? What leads to a better product, someone who is experienced with PHP, or someone just learning to use Typescript?
All that theoretical knowledge about superior paradigms won't help you now -- No clean slates! You have to build a skyscraper city to replace a swamp village while keeping the economy running, together with builders who have no clue what concrete even looks like. You might think "I'll throw my superior engineering against this, no harm done if it doesn't stick", but 9 out of 10 times that will just end in a mix of concrete rubble, corpses and mud.
I think I'm somewhere between 2 and 3.
I think I have most of the important knowledge about a wide array of languages, technologies and architectures.
I think I know how to come to a conclusion about what to use in which scenario -- most of the time.
But dealing with a giant legacy mess, transforming things into something better, without creating an ugly amalgamation of old and new systems blended together into an even bigger abomination? Nah, I don't think I'm fully there yet.8 -
Project Cortana: Day 56
*What I liked*
Here is the rant where I described the project: https://devrant.io/rants/962190
Time for a review. The biggest advantage I have found was the productivity. Let me explain:
1. Cortana: It's useful as fuck if anyone is willing to use it all the time. It really helps to get reminders and notifications everywhere (PC, Laptop and Mobile).
2. Microsoft Launcher: An underrated gem due to the hate towards M$. Thanks to it's transparent theme, it looks absolutely gorgeous. The most useful part is the "Feed" where you get all your emails, recently edited documents, recently used apps or contacts all together. I was quite surprised to see the level of customization if offered considering it's M$.
3. M$ Office: I probably don't need to talk much about it, it's the most productive tool you can get. Outlook is fucking brilliant on mobile. Other office apps, while they are great on mobile, are probably more useful in tablets. And the "Focused Inbox" is the best thing happened to outlook.
4. M$ To-Do: Holy fuck, this is sick. I know that there is many alternative with more features. But this app is the perfect example of a todo app. Simple, has the exact right features and has a really smooth, beautiful UI. This really helped me to be productive.
5. OneDrive: Didn't find much difference compared to Google Drive.
6. People: Something that I discovered later and found it really useful. You can pin contacts in the taskbar and see emails, calender items associated with that contact in one click. Found it really useful considering I was chatting with my Supervisor and lectures quite frequently.
7. Windows Mail App: While I really like it, I have mixed feeling about it. I would really love to have HTML signature. Not sure why M$ is not implementing it. But the "Share" in the Context Menu is really useful while sending attachements.
Finally, the "Fluid Design" so far is beautiful. Loving the effects.
I will write what I didn't like in the next rant.14 -
I tried writing this rant before, but I was (and still am) in too good of a mood so it was lengthy, meandering, and over-specific. so I'll summarize(ish).
summary:
* miscommunication
* working weekends
* incompetence and/or screwy integrations
summary of the summary:
* I can't fix someone else's mess if you don't talk to me!
Summary^3: #TODO: learn telepathy
Shortened rant:
Bossman at work signed up a very lucrative client by promising them something he couldn't deliver because he misunderstood and miscommunicated scope -- anti-fraud, if you've been following my rants.
Their signup (all four...) are screwy and cause issues and nobody knows why. I didn't write the code, have barely even glanced through it, and it uses a third-party (Clover) that's rather screwy.
Bossman has been asking me to do various things concerning the merchant, but has never been around to provide specifics, so I'm left to guess. I've done my best, but due to the aforementioned screwiness, I really have no idea what's going on. I just sort of muddled my way through.
Bossman also asked me, super late on Friday night (after 8:30pm), to rename one of the merchants because there are two with the same name (with different Clover creds, etc.) and that's just confusing. I didn't see the message because late and tired, and he didn't follow up or text/call me until two days later (today, Sunday). I also thought these were strictly for diagnosing and were de-listed. I had no idea the merchant was live and people were actually purchasing things for it. Had I known this I would have freaked out and demanded specifics on Thursday/Friday because wtf? debugging in production? with broken merchants? selling things for real money? scary bad? hello?
Anyway, I didn't see his message until he texted me about it at like 5pm today while I was about 2 hours from my computer. He's understandably frustrated, and I totally don't blame him, but fuck, miscommunication is a serious problem in this company, and that's amazing because it's so freaking small.
But the short version is that I'm likely going to get blamed for all this, Clover screwiness included. Bossman and I set up a call for 10am tomorrow and I'm positive he's going to try pinning it on me. Totally not going to let him, but his social is lv16+ while mine's like. 2 or 3. 😕 I'll see how it goes.
Really though, I should read @rutee07's book and just roast these fuckers.rant weekend work debugging in production miscommunication no call no text still my fault hope you see this it's urgent clover strip club3 -
Anyone else is doing this? When you know you need to implement it, but want to fucus on something else and #TODO just doesn't cut it. xD3
-
Don’t work from exact place you eat everyday or sleep or entertain.
If you can’t focus set timer from 15 minutes to 1 hour and do something else that is not engaging your brain the same way your work does.
Go for a walk.
Take a break from electronic devices.
Take a shower.
Take a nap.
Take a dump.
Make a list of things todo before you eat.
Make groceries.
Clean your house a little.
Make a laundry.
Any manual labor helps if you need brain muscles for thinking.7 -
I'M BACK TO MY WEBDEV ADVENTURES GUYS! IT TOOK ME LIKE 4 MONTHS TO STOP BEING SO FUCKING DEPRESSED SO I CAN ACTUALLY STAND TO WORK ON IT AGAIN
I learned that the linear gradient looks cool as FUCK. Honestly not too fond of the colors I have right now, but I just wanted to have something there cause I can change it later. The page has evolved a bunch from my original concept.
My original concept was the bar in the middle just being a URL bar and having links on the sides. If I had kept that, it would have taken me a few hours to get done. But as time went on when I was working on it, my idea kept changing. Added the weather (had a forecast for a while but the code was gross and I never looked at the next days anyways, so I got rid of it and kept the current data). I wanted to attempt an RSS reader, but yesterday I was about to start writing the JavaScript to parse the feeds, then decided "nah", ended up making the space into a todo list.
The URL bar changed into a full command bar (writing the functions for the commands now, also used to config smaller things, such as the user@hostname part, maybe colors, weather data for city and API key, etc)....also it can open URLs and subreddits (that part works flawlessly). The bar uses a regex to detect if it's a legit URL (even added shit so I don't need http:// or https://), and if it's not, just search using duckduckgo (maybe I'll add a config option there too for search engines).
At this very moment it doesn't even take a second to fully load. It fetches weather data from openweathermap, parses it, and displays it, then displays the "user" name grabbing a localstorage value.
I'm considering adding a sidebar with links (configurable obviously, I want everything to be dynamic, so someone else could use my page if they wanted), but I'm not too sure about it.
It's not on git yet because I was waiting until I get some shit finished today before I commit. From the picture, I want to know if anyone has any suggestions for it. Also note that I am NOT a designer. I can't design for shit.12 -
I honestly don’t know how my coworker has been a software engineer for 10+ years, doesn’t know and or understand a single Linux command, only works from windows... also doesn’t understand the concept of proper version control ... thinks zip folders is completely sufficient... AND doesn’t understand why someone would need to refactor something... says it works... I’m like you have a 2000 line function... yes it works, but it’s not testable nor reusable... he says he’s tested it (at his desk) ... and so what if it’s not reuseable... he’ll copy and paste and rewrite something for another project. “That’s what we are paid todo” .... HORSESHIT!!!
I don’t understand how the system hasn’t weeded people out like this.... and he blindly doesn’t want to take criticism, or learn.. saying his Years of experience proves he knows what he’s doing... bullshit
I’m just happy management is on my side.20 -
My tinder date is playing journey on a ps4 pro 4k tv while i am taking a shit right now.
Needed something for her todo while i do my buisness...3 -
Here's what being in a rut is like:
You wake up to the alarm, you waste an hour or two in bed stalling browsing social shit. Finally got out of bed. You have a todo list. You ignore it. Get something to eat. Open Netflix or some brain numbing shit while having breakfast. A few hours go by, you're still watching Netflix and switching to browsing social shit in-between so your brain is numb as much as possible. It's lunch time, you're supposed to cook something, nah, I will order something. Oh, it's bedtime, let's make a todo list and go to bed and start over tomorrow...5 -
I don't know if I'm being pranked or not, but I work with my boss and he has the strangest way of doing things.
- Only use PHP
- Keep error_reporting off (for development), Site cannot function if they are on.
- 20,000 lines of functions in a single file, 50% of which was unused, mostly repeated code that could have been reduced massively.
- Zero Code Comments
- Inconsistent variable names, function names, file names -- I was literally project searching for months to find things.
- There is nothing close to a normalized SQL Database, column ID names can't even stay consistent.
- Every query is done with a mysqli wrapper to use legacy mysql functions.
- Most used function is to escape stirngs
- Type-hinting is too strict for the code.
- Most files packed with Inline CSS, JavaScript and PHP - we don't want to use an external file otherwise we'd have to open two of them.
- Do not use a package manger composer because he doesn't have it installed.. Though I told him it's easy on any platform and I'll explain it.
- He downloads a few composer packages he likes and drag/drop them into random folder.
- Uses $_GET to set values and pass them around like a message contianer.
- One file is 6000 lines which is a giant if statement with somewhere close to 7 levels deep of recursion.
- Never removes his old code that bloats things.
- Has functions from a decade ago he would like to save to use some day. Just regular, plain old, PHP functions.
- Always wants to build things from scratch, and re-using a lot of his code that is honestly a weird way of doing almost everything.
- Using CodeIntel, Mess Detectors, Error Detectors is not good or useful.
- Would not deploy to production through any tool I setup, though I was told to. Instead he wrote bash scripts that still make me nervous.
- Often tells me to make something modern/great (reinventing a wheel) and then ends up saying, "I think I'd do it this way... Referes to his code 5 years ago".
- Using isset() breaks things.
- Tens of thousands of undefined variables exist because arrays are creates like $this[][][] = 5;
- Understanding the naming of functions required me to write several documents.
- I had to use #region tags to find places in the code quicker since a router was about 2000 lines of if else statements.
- I used Todo Bookmark extensions in VSCode to mark and flag everything that's a bug.
- Gets upset if I add anything to .gitignore; I tried to tell him it ignores files we don't want, he is though it deleted them for a while.
- He would rather explain every line of code in a mammoth project that follows no human known patterns, includes files that overwrite global scope variables and wants has me do the documentation.
- Open to ideas but when I bring them up such as - This is what most standards suggest, here's a literal example of exactly what you want but easier - He will passively decide against it and end up working on tedious things not very necessary for project release dates.
- On another project I try to write code but he wants to go over every single nook and cranny and stay on the phone the entire day as I watch his screen and Im trying to code.
I would like us all to do well but I do not consider him a programmer but a script-whippersnapper. I find myself trying to to debate the most basic of things (you shouldnt 777 every file), and I need all kinds of evidence before he will do something about it. We need "security" and all kinds of buzz words but I'm scared to death of this code. After several months its a nice place to work but I am convinced I'm being pranked or my boss has very little idea what he's doing. I've worked in a lot of disasters but nothing like this.
We are building an API, I could use something open source to help with anything from validations, routing, ACL but he ends up reinventing the wheel. I have never worked so slow, hindered and baffled at how I am supposed to build anything - nothing is stable, tested, and rarely logical. I suggested many things but he would rather have small talk and reason his way into using things he made.
I could fhave this project 50% done i a Node API i two weeks, pretty fast in a PHP or Python one, but we for reasons I have no idea would rather go slow and literally "build a framework". Two knuckleheads are going to build a PHP REST framework and compete with tested, tried and true open source tools by tens of millions?
I just wanted to rant because this drives me crazy. I have so much stress my neck and shoulder seems like a nerve is pinched. I don't understand what any of this means. I've never met someone who was wrong about so many things but believed they were right. I just don't know what to say so often on call I just say, 'uhh..'. It's like nothing anyone or any authority says matters, I don't know why he asks anything he's going to do things one way, a hard way, only that he can decipher. He's an owner, he's not worried about job security.13 -
Long story short a guy texted me on Xing, he had an interesting idea, I joined in and now we are founding a startup.
Short story long, a guy texted me on Xing. I usually don't give a fuck because there always just fucktards that want to offer me modern enslavement. No thanks you lifeless greedy hamsters! (no offense) This time was different though. It was not the usual kind of words and the idea sounded pretty awesome. So I gave it a try.
We met in a Café and talked about the idea and about my role in it. It went pretty well and we basically had a nice little chat, coffee and cake.
I was still not convinced. It sounded to good to be true. Why would something like this ever happen to me? You know that kind of feeling. It was like "Hopefully I'm not selling my soul to the devil now."
We now work on the project, already have 5 customers and are a step before the first financial investment. I'm pretty amazed how that turned out!
Now to disappoint you a bit more (or maybe to give you hope?) All I've worked so far (except that one little one-year internship) happend by, me talking to someone that had a job, me being honest about what I want and me rejecting anything that runed my guts inside out. That's it. I never really applied for something. I just get to know the people and with that comes the opportunity. Just be respectful, curious and honest. The others will notice. Chances rise that you'll find something you love todo.4 -
"Finished" my first PWA today. I bet most of you think PWAs are stupid for valid reasons but I wanted to try something new. And I'm quite pleased with the result even though it's only a simple todo app. Wrote everything from scratch, no dependencies/frameworks/libraries! 😊
Source: https://github.com/olback/o-todo
Live: https://o-todo.olback.net3 -
I hate silicon valley.
They enable so much of the state's and federal government's bullshit, the corporations and the banks subversion and destruction of society.
It's time to pop their fucking tech bubble.
From here on out, any time you hear or read the words 'startup', be sure to comment with "you mean speculative marketing investments?"
Because most tech runs on shit-tier semi-polished iterations of glorified CRUD anyway, thats all most of it is. And it 100% relies on grabbing network share through massive advertising and presence campaigns. A lot of vc money is being flushed straight down the toilet and this is a point to emphasize. Crash the fucking tech sector. Do it.
It'll have a knock on effect to the advertising space, which will put the hurt on google's bottom line when they and their ilk are already under pressure for all the poisonous, monopolist shit they pull like helping china build their surveillance tech.
Extra points for emphasizing "pot-fueled ideas sketched out on napkins while sitting in fucking chipotle, in unwashed sweater vests, originated by guys who are fresh out of college and never ran a business in their life. 90% of them fail in the first year. VCs and investor are losing their shirts." etc.
The entire dishonest fucking trade relies on other people's money, being bought out in either techno land-grabs or turf-protection e.x. atlassian acquiring trello, a **glorified todo app**.
Thats the business model. Hell go build your own and make a buck.
Build your own. Build something better and most of all... *fuck silicon valley*.
Let it burn, let burn, let it burn.10 -
How surprising is it when a person designs code in a very clear and impressive structure and just when you think about asking them for guidance, they reveal themselves to be complete turds?
I've been working with this person's "infra" code, at work. I've rewritten some classes to use their infra. I had a vague idea of how the classes work. I had no idea of how their code works. Expectedly, there were some issues but now only minor ones remain.
I asked them for a description of what I'm supposed to do for the few bugs I'm facing. They replied in such a condescending tone, it made me want to punch them through the screen.
Almost a month later, we're still going back and forth with emails. I've been swallowing it and responding calmly. I never got direct answers. Always deflections to irrelevant things or veiled insults. I took it because they did correct one silly error of mine that actually my code reviewer should've caught. (What's worse is that it got introduced by me just before my review and commit.)
But does that give them the right to insult me in front of the whole team including my project manager? I got a reply today from them with everyone of note in cc implying very clearly that I have not done any work. They highlighted a line from my code with some todo tag (that was not meant for them) to make their invalid point. A line that's unrelated to the bug I asked them about. This is after I proved them wrong when they insisted that I had done something wrong about a feature related to the bug.
If you don't understand what I asked for fucking ask me to ask again. But do not fucking try establish yourself on higher ground by pointing out irrelevant things in my code.
I was shocked and enraged that they'd do such a thing. I double checked everything like a mad man. Despite knowing that the fix has to come from them, I was instantly transported to the noob stage, grasping at straws. I wanted to send a really scathing reply right away but my manager asked me to wait.
My mind is now a see saw shifting between a panicked noob questioning every fucking thing I ever did in my nada life and a hungry enraged monster looking to maul that fucking shithead for burning me like that.1 -
Hello fellow developers!
I know this is devRant, but I don't know of a better community with such diversity of developers like you guys and I need your input.
I decided to go on a language journey. I come from a background of php/javascript and feel the need to expand my horizons.
I'm going to write the same app in each language to get the feel of it and become familiar with the syntax and language concepts.
Since I'm a web developer I'll focus mainly on languages used on the web like: Java, Python, Ruby, etc.. But I want to cover others as well, like Objective-C/Swift, C++/C#.
I'm having trouble figuring out what kind of an app would cover most of the ground. I know the basic guideline for this is a TODO app for web frameworks, but I
don't feel like writing a TODO in Swift or C# really cover what the languages are intended for.
I don't know enough about the environments yet to come up with a good idea.
I want something, that can be language independent but would utilize the power of each language in one part or another and is still simple enough not to require weeks of development.
Does anyone have a brilliant idea what that could be?4 -
I have the habit of adding //todo comments to my code whenever I need to implement something later. Very useful to just search your code for "todo" and see what is left to do.
That is all very well, but I just searched my project for "todo" and there are SO MANY //todo comments in the third party dependencies...4 -
You know how a normal developer will start writing a program, and then take the big pieces and split/refactor it; move hard coded things into functions that take arguments, and cleaning up along the way?
Our manager makes a tons of empty files, and empty directories, with how he thinks he wants to build something, and checks them all in. Tons of .gitkeep files in empty directories, blank Jenkinsfile, Dockerfile that doesn't build.
When he makes wiki documentation, there are tons of subsections, all of which are links to pages with "TODO" in them.
Dear god stop it you asshat! Stop making tons of empty files and pages. Write the thing in one chunk and then split it as needed like someone who actually knows how to engineer software!1 -
Anyone else have 100 .txt files on the computer called note(54).txt? Or TODO(32).txt? Yeah... Someday I will compress them into one so I don't miss something important for work. Why don't we have issue tracking?!?!5
-
!!!rant
Most exited I've been about some code? Probably for some random "build a twitter clone with Rails" tutorial I found online.
I've been working on my CS degree for a while (theoretical CS) but I really wanted to mess with something a bit more practical. I had almost none web dev experience, since I've been programming mostly OS-related stuff till then (C). I started looking around, trying to find a stack that's easy to learn since my time was limited- I still had to finish with my degree.
I played around with many languages and frameworks for a week or two. Decided to go with Ruby/Rails and built a small twitter clone blindly following a tutorial I found online and WAS I FUCKING EXITED for my small but handmade twitter clone had come to life. Coming from a C background, Ruby was weird and felt like a toy language but I fell in love.
My excitement didn't fade. I bought some books, studied hard for about a month, learned Ruby, Rails, JavaScript, SQL (w/ pg) and some HTML/CSS. Only playing with todo apps wasn't fun. I had a project idea I believed might be somewhat successful so I started working on it.
The next few months were spent studying and working on my project. It was hard. I had no experience on any web dev technology so I had learn so many new things all at once. Picked up React, ditched it and rewrote the front end with Vue. Read about TDD, worked with PostgreSQL, Redis and a dozen third party APIs, bought a vps and deployed everything from scratch. Played it with node and some machine learning with python.
Long story short, one year and about 30 books later, my project is up and running, has about 4k active monthly users, is making a profit and is steadily growing. If everything goes well, next week I'll close a deal with a pretty big client and I CANT BE FKING HAPPIER AND MORE EXCITED :D Towards the end of the month I'll also be interviewed for a web dev position.
That stupid twitter clone tutorial made me excited enough to start messing with web technologies. Thank you stupid twitter clone tutorial, a part of my heart will be yours forever.2 -
If you’re a developer who seek professional growth, there is no better way than learning other languages, even if nobody really uses them.
Pick a language and spend a weekend reading tutorials and most importantly writing code in it, something like game of life, sudoku solver or todo-list app.
The more alien the language feels the better. Try Clojure, OCaml, Smalltalk, Prolog, Erlang, and also weird esoteric languages like Piet.
Writing code that operates on alien concepts you see there is the quickest way of learning that concepts and reusing them in whatever language you’re making money with. Your professional growth will be immense.23 -
I am glad that I usually include comments, which make me smile years later...
What are your best findings when you look at your old code?
something like:
// having any and all at the same hierarchy is not valid (and stupid)
someMistakeDeep: 1 // deep fail
// TODO: find out, why the cache is behaving like this. And fix it ¯\_(ツ)_/¯
or my all time favorite comments
// this should not happen.
// wat?
or testing emails like
- tldsAreNotCheckedBTW@something.idontthinkthisdoesexist
- nonValidEmail.com
or urls...
- ProtocolMissing.com
- www.stillNoProtocol.com
And when I'm out of ideas, something like this
messageContent: 'Bla Bla Bla. Exception in FS on Host https://w.com/hpsa',
{ SmsVerb: 'randomVerb' }, // unknown Attribute5 -
There is this colleague working in my team so if I ask her to Todo something for me she will do it but will respond to my email just few minutes before sign off time (4:30pm). Next day during the standup meeting she will inform the manager that the task has completed and it's in my plate now. Since she responded to me just few minutes before signoff time I was not able to deliver the task that I was suppose todo on that day.6
-
Try to finish some of the projects I've started in 2018. Right now I have a todo list text file, along with multiple written lists (the written ones are more focused on a single project normally).
-Finish the startpage I've been doing off and on for at least a month now. I ended up making a lot of it command based (just need to write the scripts for the commands..). I had a little config menu but I just got tired of it and the text box is autofocus anyways, so I figured I'd make it command focused.
-Nice little root safety script as I call it. I've made very stupid mistakes as root before. I once made a typo and ran "chmod --recursive 644 /" while half asleep. I believe I was trying to run that on the current directory I was in, but as you know, the . and / are right next to each other. Basically the script would see what you're doing and echo "you're about to do x, are you sure that's what you want to do?". Something I know I could knock out in a day, but I've been putting it off for at least a year now.
-Compiling notification. I saw something similar once a few years ago, and it was so fucking cool. I remember it being a Mac, and it had a notification that would basically tell you how many files and shit you had left to compile if you were building something. Kinda want to build something for polybar.
-FUCKING RUBBER DUCK DEBUGGING TO THE EXTREME! This one was inspired by a comment someone made once months ago. Might have been here, or reddit, or in real life, not sure. Basically a big ass fucking rubber duck with LEDs in it that will like glow red if your code wouldn't compile (I think Visual Studio has like an automatic error detecting thing in there?? Maybe something similar if I can figure that out). Honestly not sure how the fuck I'd do this one, but I love the idea and I really want to fucking do it
There's more shit. These are just the main ones I want to attempt sometime in the near future. -
!rant
Continuation from: https://devrant.com/rants/979267/...
My vision is to implement something that is inspired by Flow Based Programming.
The motivation for this is two fold
* Functional design - many advantages to this, pure functions mean consistent outputs for each input, testable, composable, reasonable. The functional reactive nature means events are handles as functions over time, thus eliminating statefulness
* Visual/Diagrammable - programs can be represented as diagrams, with components, connections and ports, there is a 1 to 1 relationship between the program structure and visual representation. This means high level analysis and design can happen throughout project development.
Just to be clear there are enough frameworks out there so I have no intentions of making a new one, this will make use of the least number of libraries I can get away with.
In my original post I used Highland.js as I've been following the project a while. But unfortunately documentation is lacking and it is a little bare bones; I need something that is a little more featureful to eliminate boilerplate code.
RxJS seems to be the answer, it is much better documentated and provides WAY more functionality. And I have seen many reports of it being significantly easier to use.
Code speaks much louder so stay tuned as I plan to produce a proof of concept (obligatory) todo app. Or if you're sick of those feel free to make a request.3 -
@dfox
I recently posted a rant containing the tag "$" (php, you know).
But if I search rants with the search pattern "$", the search returns no results.
I guess this has something todo with $ as a special character ;)
Is it a bug or is it a feature? *g*7 -
For all the react developers.
I just started learning react 3 months ago and I made a simple crud todo-list with express and MySQL, I want to make a good app that will help me in my job search, so pls suggest me something.4 -
Note to self for later: whenever I git push something from any side project, next time just add a TODO list so I don't loose time to remember what the fuck I was doing
-
Comment introduced by a commit 3 years ago before an empty function:
```
%% TODO determine if there needs to be something here or if this can be removed
```4 -
I just noticed something, I wanted to test out flutter so I decided to make a basic Todo application.
I made a Todo app with flutter and Kotlin and what I discovered was that. Flutter apps are very large.
A Kotlin Todo app had a size of less than 25mb while a Flutter Todo app had 60mb. And I didn't use too much design.6 -
Org-mode vs. taskwarrior vs. Vim-Org-mode?
Anyone experienced with Cli Todo/Project management?
I am looking for something Cli based with the ability to sync across machines/mobile phones and found these left on the list after some research.
Can anyone share experience with one or some of these tools?
How would your work flow look like?
Are there alternatives I may have missed? -
The chief came with a new idea.. something that runs ‘a side’ of our main project as some sort of manager. The database wasn’t designed with that in mind..
Now I’m wondering if I’m having issues because I could’ve designed the database better so that this wouldn’t be an issue or if I shouldn’t “blame” myself, because that wasn’t the initial idea. 🤷🏻♂️
We had to do a lot of migrations to keep adding and changing for the “new ideas” and now the database is a mess.. but it’s like.. too “big” to just start a new clean database structure, but it could optimize everything and make the backend easier/cleaner instead of dirty hacks/queries to combine all the different features.
As a ‘bad’ example, but the idea started as a todo list, migrated to a social network and is now migrating to something like smartschool to be able to manage users and groups, but with different features than the ‘social network’ had... I’m wondering what’s next..2 -
If anyone has a moment.
curious if i'm fucking something up.
model:
self.linear_relu_stack = nn.Sequential(
nn.Linear(11, 13),
nn.ReLU(),
# nn.Linear(20, 20),
# nn.ReLU(),
nn.Linear(13,13),
nn.ReLU(),
nn.Linear(13,8),
nn.Sigmoid()
)
Inputs:
def __init__(self, targetx, targety, velocityx, velocityy, reloadtime, theta, phi, exitvelocity, maxtrackx, maxtracky,splashradius) -> None:
# map to 1 and 2
self.Target: XY = XY(targetx, targety)
# map to 3 and 4
self.TargetVel: XY = XY(velocityx, velocityy)
# TODO: this may never be necessary as targeting and firing is the primary objective
# map to 5, probably not yet needed may never be.
self.ReloadTime:float = reloadtime
# map to 6 and 7
self.TurretOrientation: Orientation = Orientation(theta, phi)
# map tp 8
self.MuzzleVelocity:float = exitvelocity
# map to 9 and 10, see i don't remember the outcome of this
# but i feel it should work. after countless bits of training data added.
# i can see how this would fuck up if exact values were off or there was a precision error
# maybe firing should be controlled by something else ?
self.MaxTrackSpeed: Orientation = Orientation(maxtrackx, maxtracky)
# these are for sigmoid output, any positive value of x will produce between 0.5 and 1.0 as return value
# from the sigmoid function.
self.OutMin = 0.5
self.OutMax = 1.0
# this is the number of meters radius that damage still occurs when a projectile lands.
# to be used for calculating where a hit will occur.
self.SplashRadius:float = splashradius
Outputs:
def __init__(self, firenow, clockwise,cclockwise,up,down,oor, hspeed, vspeed) -> None:
self.FireNow = float(firenow)
self.RotateClockWise = float(clockwise)
self.RotateCClockWise = float(cclockwise)
self.MoveUp = float(up)
self.Down = float(down)
self.OutOfRange = float(oor)
self.vspeed = float(vspeed)
self.hspeed = float(hspeed)9 -
I resigned from my job, and now there are 6 weeks left at my old desk, until I can leave and jump into a new world.
Now, I have done all points on my checklist/todo-list and I'am now surfing the web all day long.
Any suggestions for websites to learn something / interessting reads?5 -
A year ago I built my first todo, not from a tutorial, but using basic libraries and nw.js, and doing basic dom manipulations.
It had drag n drop, icons, and basic saving and loading. And I was satisfied.
Since then I've been working odd jobs.
And today I've decided to stretch out a bit, and build a basic airtable clone, because I think I can.
And also because I hate anything without an offline option.
First thing I realized was I wasn't about to duplicate all the features of a spreadsheet from scratch. I'd need a base to work from.
I spent about an hour looking.
Core features needed would be trivial serialization or saving/loading.
Proper event support for when a cell, row, or column changed, or was selected. Necessary for triggering validation and serialization/saving.
Custom column types.
Embedding html in cells.
Reorderable columns
Optional but nice to have:
Changeable column width and row height.
Drag and drop on rows and columns.
Right click menu support out of the box.
After that hour I had a few I wanted to test.
And started looking at frameworks to support the SPA aspects.
Both mithril and riot have minimal router support. But theres also a ton of other leightweight frameworks and libraries worthy of prototyping in, solid, marko, svelte, etc.
I didn't want to futz with lots of overhead, babeling/gulping/grunting/webpacking or any complex configuration-over-convention.
Didn't care for dom vs shadow dom. Its a prototype not a startup.
And I didn't care to do it the "right way". Learning curve here was antithesis to experimenting. I was trying to get away from plugin, configuration-over-convention, astronaut architecture, monolithic frameworks, the works.
Could I import the library without five dozen dependancies and learning four different tools before getting to hello world?
"But if you know IJK then its quick to get started!", except I don't, so it won't. I didn't want that.
Could I get cheap component-oriented designs?
Was I managing complex state embedded in a monolith that took over the entire layout and conventions of my code, like the world balanced on the back of a turtle?
Did it obscure the dom and state, and the standard way of doing things or *compliment* those?
As for validation, theres a number of vanilla libraries, one of which treats validation similar to unit testing, which seems kinda novel.
For presentation and backend I could do NW.JS, which would remove some of the complications, by putting everything in one script. Or if I wanted to make it a web backend, and avoid writing it in something that ran like a potato strapped to a nuclear rocket (visual studio), I could skip TS and go with python and quart, an async variation of flask.
This has the advantage that using something thats *not* JS, namely python, for interacting with a proper database, and would allow self-hosting or putting it online so people can share data and access in real time with others.
And because I'm horrible, and do things the wrong way for convenience, I could use tailwind.
Because it pisses people off.
How easy (or hard) would it be to recreate a basic functional clone of the core of airtable?
I don't know, but I have feeling I'm going to find out!1 -
!rant !dev
So, following up my last rant.
https://devrant.com/rants/2433162
I quit on Friday, this is what I said to my bosses.
"In the last week I had, 2 panic attacks, and I have 2 theories for this, one is that I have underlying psychological problems, the other theory is that we are under an impossible task, I choose to say now that I have to quit because I have psychological issues, but if you are willing to hear my other theory, that involves saying that meeting the deadline is not viable, then I can tell you that, so do want to listen that part?.
Bosses: No, we heard enough, we are going to have your contract terminated in order, and we will let you know when you can come and pick your paycheck."
So, that's them. Now about me and how I re-discovered GTD, or more precisely how I organized my whole weekend using taskwarrior with GTD, and why I think is going to be useful as a freelancer.
Before I feel good about telling you about my weekend I have to tell you a few things about myself.
I am a very impulsive person, I have a lot of energy in short surges, so I have to be able to maximize my activity when I'm in a surge, and I have to maximize my rest when I am not.
That's hard to do, it requires a balanced lifestyle, I am also very prone to being neurotic, and overwhelmed by the amount of stuff that I want to do.
And on top of that, when I am resting, I have surges of things that I want to have, do, or implement, it could be software related, as "Doing an app that will be the Uber of home services", to house improvements like, "I have to fix that leaking roof", and all the sort of stuff that happens in between hardware and software. That surge of consciousness doesn't allow me to have the proper rest that I need before I engage with activities again.
Because of this I have a very cyclic rhythm, with whole weeks burning my energy into doing stuff, and weeks resting doing very little and thinking too much.
Now about my weekend. Friday night I was browsing the web, and a thought came to my head. "The way you use your terminal, says a lot about your personality", and I got curious, so I searched for, "Show me your terminal", and found a post in dev.to to see all kind of nice terminal setups, from the very minimalist to very feature rich oh-my-zsh themes with plugins for git, aws and what not. One of these pictures really got my attention, a guy had set up his terminal to show him, how many task has he done in the day, and how many cups of coffee has he had.
So by investigating how he set up his terminal to show in the prompt the number of successfully completed tasks in the day, I found out that he was using taskwarrior, he was also kind enough to share the source code of his prompt setup, which I bookmarked to later incorporate that into my oh-my-zsh config.
After reading about taskwarrior, I also got a reference to GTD, I don't remember if this was one of those thoughts that I have and follow immediately, or if I read something that led me to a YouTube video summarizing GTD.
In the end, after watching that GTD video, I decided to give it a try to organize my life, and help me find a remote job, keep my house in order, plan my social activities as "hang out with friends", "visit mom and dad", and give the proper amount of attention to my GF, with whom I am deeply in love, and willing to spend the remaining of my years with her.
So my fist task was.
task add Ask for GF's parents blessing.
Which of course I have no intention of doing right now, but is one of the things that I will eventually have to do.
Then it started, I started adding tasks, and things to do, and go through the whole Capture phase of GTD.
Now it is a good time to write a small summary of what I think GTD is.
GTD is a life habit of organizing your life in todo-lists. And it was a very specific core method, that in the video summary that I watched was called CPR.
Capture, Process and Review.
Capture:
When you capture you just add your tasks to a bucket list.
So I took a notebook and started writing down everything that I wanted to have done. I also started to capture ideas as they came up to me, I did this by writing a telegram saved message in my phone, or directly adding it as a task in TW.
Process:
I read my telegram messages and put them into my task warrior list, then I started to organize my tasks into projects, breaking down every task that was not an atomic unit.
* And different projects started to emerge from this. One of them was project:Housekeeping.
And here's my screenshot of what I did this weekend, also the number of projects that I have, and all the things that I have to do in order to have what I think would be a very balanced, fun, and productive life.
You'll be able to see in the screenshot, that there's a blocked task, yes, tw allows you to organize dependencies too, so one task is delegated, and blocked by the delegation task.1 -
Just discovered https://twitter.com/ExpertBeginner1. It's the story of my life. Giant classes, copying and pasting, and architects who create frameworks. It's great when we combine all three: A "framework" created by an architect which is made of giant classes that you copy and paste. Imagine a giant generic class where the generic argument is only used by dead code. Pause for a moment and try to visualize that.
It inherits from a base class with lots of virtual methods called by base methods that throw NotImplementedException, so if you don't need them you have to override them to return empty collections. If you're going to do something so messed up you could just put those default implementations in the base. But no, you can inherit, it compiles, and then it throws a runtime error unless you override methods the compiler doesn't require you to override.
The one method you're required to override has a TODO comment telling you what to put there. Except don't ever do what the comment says because that's the old standard. The new standard says never, ever do that.
Most of the time when I read about copy-and-paste coding it's about devs who copy and paste because they don't know how to write or reuse code. They don't mention the environments where copying and pasting the same classes over and over again is the requirement and you're not allowed to write your own code.
Creating base classes where you just override a method or two can potentially work, but only in the right scenarios and only if you do it right. If you're copying and pasting a class that inherits from the base class and consists entirely of repeated code, why the heck isn't that the base class? It could be a total mess, but at least it would be out of sight and each successive developer wouldn't become responsible for it by including it in their own code.
It's a temporary engagement, but I feel almost violated. I know it's a first-world problem, and I get to work indoors and take vacations. I'm grateful for those things.
Before leaving I had to document the entire process of copying and pasting an entire repo, making a ton of baseline edits that should just be in the template but aren't, and then copying and pasting from other places into the copied and pasted code. That makes me a collaborator. I apologize more than once in the documentation, all 20 pages of it that you have to read and follow before you even get to the part where you write the code for what you actually need it to do.
This architect has succeeded in making every single thing anyone does more about servicing the needs of his "framework" than about writing actual code to do what needs doing. Now that the framework is in and around everything it creates the illusion that it's a critical part of our operations. It's not. It's useless overhead.
Because management is deceived into thinking they need it they overlook the fact that it blows up, big and small, every single day. The log is full of failures that I know no one ever sees. A big chunk of what they think it does fails silently, and they don't even notice until months later when they realize how much data they're missing. But if they lose, say, 25% they'll never notice.
When they do notice they just act like it's normal, go into fire drill mode, and fix it. Doom. You're all doomed. I'm standing on the deck of the Titanic next to my jet ski.1