Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
Get a devDuck
Rubber duck debugging has never been so cute! Get your favorite coding language devDuckBuy Now
Search - "fuck html and css while at it"
So I got the job. Here's a story, never let anyone stop you from accomplishing your dreams!
It all started in 2010. Windows just crashed unrecoverably for the 3rd time in two years. Back then I wasn't good with computers yet so we got our tech guy to look at it and he said: "either pay for a windows license again (we nearly spend 1K on licenses already) or try another operating system which is free: Ubuntu. If you don't like it anyways, we can always switch back to Windows!"
Oh well, fair enough, not much to lose, right! So we went with Ubuntu. Within about 2 hours I could find everything. From the software installer to OpenOffice, browsers, email things and so on. Also I already got the basics of the Linux terminal (bash in this case) like ls, cd, mkdir and a few more.
My parents found it very easy to work with as well so we decided to stick with it.
I already started to experiment with some html/css code because the thought of being able to write my own websites was awesome! Within about a week or so I figured out a simple html site.
Then I started to experiment more and more.
After about a year of trial and error (repeat about 1000+ times) I finally got my first Apache server setup on a VirtualBox running Ubuntu server. Damn, it felt awesome to see my own shit working!
From that moment on I continued to try everything I could with Linux because I found the principle that I basically could do everything I wanted (possible with software solutions) without any limitations (like with Windows/Mac) very fucking awesome. I owned the fucking system.
Then, after some years, I got my first shared hosting plan! It was awesome to see my own (with subdomain) website online, functioning very well!
I started to learn stuff like FTP, SSH and so on.
Went on with trial and error for a while and then the thought occured to me: what if I'd have a little server ONLINE which I could use myself to experiment around?
First rented VPS was there! Couldn't get enough of it and kept experimenting with server thingies, linux in general aaand so on.
Started learning about rsa key based login, firewalls (iptables), brute force prevention (fail2ban), vhosts (apache2 still), SSL (damn this was an interesting one, how the fuck do you do this yourself?!), PHP and many other things.
Then, after a while, the thought came to mind: what if I'd have a dedicated server!?!?!?!
I ordered my first fucking dedicated server. Damn, this was awesome! Already knew some stuff about defending myself from brute force bots and so on so it went pretty well.
Finally made the jump to NginX and CentOS!
Made multiple VPS's for shitloads of purposes and just to learn. Started working with reverse proxies (nginx), proxy servers, SSL for everything (because fuck basic http WITHOUT SSL), vhosts and so on.
Started with simple, one screen linux setup with ubuntu 10.04.
Running a five monitor setup now with many distro's, running about 20 servers with proxies/nginx/apache2/multiple db engines, as much security as I can integrate and this fucking passion just got me my first Linux job!
It's not just an operating system for me, it's a way of life. And with that I don't just mean the operating system, but also the idea behind it :).20
So, as someone who has spent a lot of time in JS and a lot of time elsewhere, here are my views. Please, discuss your opinions with me as well. I am genuinely interested in an intelligent conversation about this topic.
So here's my background: learned HTML/CSS/JS in that order when I was 12 because I liked computers. I was pretty shitty at JS until U was at least 15, but you get the point, Ive had it sploshing about in my brain for a while.
Now, JS certainly has its quirks, no doubt, but theres nothing about the language itself that I would say makes it shitty. Its a very easy leanguage to use, but isn't overdeveloped like VB.net (Or, as I like to call it, TheresAFunctionForThat)
Most of the hate is centered around JS being used for a very broad range of systems. I doubt JS would be in the rant feed so often if it were to stay in its native ecosystem of web browsers. JS can be used in server backend, web frontent, desktop and mobile applications, and even in some system services (Although this isn't very popular as of yet). People seem to be terrified that one very easy to learn language can go so far. And, oh god, its interpreted... How can a system app run off an interpreted language? That's absurd.
My opinion on JSEverything is that it's progress. Thats what we're all about, right? The technologies already in place are unthreatened by JS, it isn't a gamechanger. The only thing JS integration is doing is making tedius and simple tasks easier. Big companies with large systems aren't going to jump ship and migrate to JS. A startup, however, could save a fucking ton of development time by using a JS framework, however. I want to live in a world where startups can become the next Google, because technology will stagnate when youre trying to protect your fortune, (Look at Apple for fucks sake) but innovation is born of small people with big ideas.
I have a feeling the hate for JS is coming from fear of abandoning what you're already doing. You don't have to do that. JS is only another option (And a very good one, which is why it's becoming so popular).
As for my personal opinion from my experiences... I've left this part til the end on purpose. I love programming and learning and creating, so I've never hated a lamguage, really. It all depends on what I want to do. In the times i've played arpund with JS, I've loved it. Very very easy. The idea of having it on both ends of web development makes a lot of sense too, no conversion, just direct communication. I would imagine this really helps with speed, as well. I wouldn't use it in a complicated system, though. Small things, medium size projects: perfect. Running a bank? No.
So what do you think about this JSUniverse?9
Fuck Google Chrome and fuck you too MSI...
Why the hell would you not allow me to register my motherfucking MSI motherboard without installing Chrome first.
We are now at this point where Web Devs are refusing to make a simple shitty html form work unless it is running in Google Chrome...
You know what? Shove a big fat horse dildo up your ass.. I'm not registering this piece of shit and if I find the dev behind this, I will shove the entire MoBo up their ass without lube just to watch them scream in pain and agony.29
I am much too tired to go into details, probably because I left the office at 11:15pm, but I finally finished a feature. It doesn't even sound like a particularly large or complicated feature. It sounds like a simple, 1-2 day feature until you look at it closely.
It took me an entire fucking week. and all the while I was coaching a junior dev who had just picked up Rails and was building something very similar.
It's the model, controller, and UI for creating a parent object along with 0-n child objects, with default children suggestions, a fancy ui including the ability to dynamically add/remove children via buttons. and have the entire happy family save nicely and atomically on the backend. Plus a detailed-but-simple listing for non-technicals including some absolutely nontrivial css acrobatics.
After getting about 90% of everything built and working and beautiful, I learned that Rails does quite a bit of this for you, through `accepts_nested_params_for :collection`. But that requires very specific form input namespacing, and building that out correctly is flipping difficult. It's not like I could find good examples anywhere, either. I looked for hours. I finally found a rails tutorial vide linked from a comment on a SO answer from five years ago, and mashed its oversimplified and dated examples with the newer documentation, and worked around the issues that of course arose from that disasterous paring.
So I ended up storing the markup (rendered from a rails partial) in an html comment of all things, and pulling the markup out of the comment and gsubbing its IDs on document load. This has the annoying effect of preventing me from using html comments in that partial (not that i really use them anyway, but.)
Every step of the way on building this was another mountain climb.
* singular vs plural naming and routing, and named routes. and dealing with issues arising from existing incorrect pluralization.
* reverse polymorphic relation (child -> x parent)
* The testing suite is incompatible with the new rails6. There is no fix. None. I checked. Nope. Not happening.
* Rails6 randomly and constantly crashes and/or caches random things (including arbitrary code changes) in development mode (and only development mode) when working with multiple databases.
* nested form builders
* styling a fucking checkbox
* Making that checkbox (rather, its label and container div) into a sexy animated slider
* passing data and locals to and between partials
* misleading documentation
* building the partials to be self-contained and reusable
* coercing form builders into namespacing nested html inputs the way Rails expects
* input namespacing redux, now with nested form builders too!
* Figuring out how to generate markup for an empty child when I'm no longer rendering the children myself
* Figuring out where the fuck to put the blank child template markup so it's accessible, has the right namespacing, and is not submitted with everything else
* Figuring out how the fuck to read an html comment with JS
* nested strong params
* nested strong params
* nested fucking strong params
* caching parsed children's data on parent when the whole thing is bloody atomic.
* Converting datetimes from/to milliseconds on save/load
* CSS and bootstrap collisions
* CSS and bootstrap stupidity
* Reinventing the entire multi-child / nested params / atomic creating/updating/deleting feature on my own before discovering Rails can do that for you.
I am so glad it's working.
I don't even feel relieved. I just feel exhausted.
But it's done.
and it's done well. It's all self-contained and reusable, it's easy to read, has separate styling and reusable partials, etc. It's a two line copy/paste drop-in for any other model that needs it. Two lines and it just works, and even tells you if you screwed up.
I'm incredibly proud of everything that went into this.
But mostly I'm just incredibly tired.
Time for some well-deserved sleep.8
Okay guys, this is it!
Today was my final day at my current employer. I am on vacation next week, and will return to my previous employer on January the 2nd.
So I am going back to full time C/C++ coding on Linux. My machines will, once again, all have Gentoo Linux on them, while the servers run Debian. (Or Devuan if I can help it.)
So what have I learned in my 15 months stint as a C++ Qt5 developer on Windows 10 using Visual Studio 2017?
1. VS2017 is the best ever.
Although I am a Linux guy, I have owned all Visual C++/Studio versions since Visual C++ 6 (1999) - if only to use for cross-platform projects in a Windows VM.
2. I love Qt5, even on Windows!
And QtDesigner is a far better tool than I thought. On Linux I rarely had to design GUIs, so I was happily surprised.
3. GUI apps are always inferior to CLI.
Whenever a collegue of mine and me had worked on the same parts in the same libraries, and hit the inevitable merge conflict resolving session, we played a game: Who would push first? Him, with TortoiseGit and BeyondCompare? Or me, with MinTTY and kdiff3?
Surprise! I always won! 😁
4. Only shortly into Application Development for Windows with Visual Studio, I started to miss the fun it is to code on Linux for Linux.
No matter how much I like VS2017, I really miss Code::Blocks!
5. Big software suites (2,792 files) are interesting, but I prefer libraries and frameworks to work on.
For future reference, I'll answer a possible question I may have in the future about Windows 10: What did I use to mod/pimp it?
1. 7+ Taskbar Tweaker
3. Classic Start (Now: Open-Shell-Menu)
Enhanced text editor I like a lot more than notepad++. Aaaand it has a "vim-mode". 👍
Three way diff viewer, that can resolve most merge conflicts on its own. Its keyboard shortcuts (ctrl-1|2|3 ; ctrl-PgDn) let you fly through your files.
8. Link Shell Extensions
Support hard links, symbolic links, junctions and much more right from the explorer via right-click-menu.
Neither as beautiful as Conky, nor as easy to configure or flexible. But it does its job.
Of course this wasn't everything. I also pimped Visual Studio quite heavily. Sam question from my future self: What did I do?
1 AStyle Extension
2 Better Comments
Simple patche to make different comment styles look different. Like obsolete ones being showed striked through, or important ones in bold red and such stuff.
4 Atomineer Pro Documentation
Alright, it is commercial. But there is not another tool that can keep doxygen style comments updated. Without this, you have to do it by hand.
5 Highlight all occurrences of selected word++
Select a word, and all similar get highlighted. VS could do this on its own, but is restricted to keywords.
6 Hot Commands for Visual Studio
This ingenious invention colorizes brackets (aka "Rainbow brackets") and makes their inner space visible on demand. Very useful if you have to deal with complex flows.
Come on! 2018 and Visual Studio still outputs monochromatically?
That's it, folks.
No matter how much fun it will be to do full time Linux C/C++ coding, and reverse engineering of WORM file systems and proprietary containers and databases, the thing I am most looking forward to is quite mundane: I can do what the fuck I want!
Being stuck in a project? No problem, any of my own projects is just a 'git clone' away. (Or fetch/pull more likely... 😜)
Here I am leaving a place where gitlab.com, github.com and sourceforge.net are blocked.
But I will also miss my collegues here. I know it.
Well, part of the game I guess?7
If nobody hates you, you're doing something wrong ~ House MD
Tl;Dr : I'm pissing the right people off and my God I like it
That's what I've known and have confirmed doing my current side project with my gf, we are working on a ratemyprofessors clone with extra spicy features, one in particular is so spicy some teachers will be put in a position in which they would rather grind hot peppers with their butt cheeks.
Don't get me wrong, there are good teachers (some of which actually showed support) but some are not good teachers and some aren't good people either; I've decided it's time to stop complaining and take action.
We recently released an alpha and I presented it to a teacher I had this semester (one of the "not so great" kind) as a DB proyect cuz fuck it I'm not doing 2 projects.
This teacher is your run of the mill "I'm lazy and I don't care" teacher and she ran the classroom like a shitty kindergarten, so much so, one of the teams was presenting a buggy admin site as their project and she started talking on the phone! Right up on their faces!!
My turn, I go up and handle her a 30 page printed thesis of my project and said that unlike my mates, I was going to start presenting the idea and then the actual software...why is it printed?, She said; Because I won't be projecting the PDF ma'am, I actually made a professional presentation and that way you can read more technical details while I give a broad overview...
I started talking about the huge issues students face and my research about it, undisciplined teachers, no class structure ~ abrupt interruption ~ "yeah I know like, you are giving so much statistics and numbahs but where is the database?"
I got pissed off because the whole purpose of printing and giving her the docs was for her to ask specific questions AT THE END! So I told her I was getting there and to ask questions at the end...I start showing off the system's sweetest features... everyone got quiet...a girl on the front row kept looking at the teacher and then back to the board with her eyes wide open, the teacher was visibly upset.
I asked someone to please help me by using the site being projected for everyone to see, he searched the teacher's name and it obviously popped up cuz I scrapped the whole teacher index site... some people gasp and others start murmuring.
She freaked and started arguing saying that frontend can't be just HTML and CSS, where did you mentioned x and y feature? admit it's just teacher evaluations! where did you get the teacher names? I want the scripts!....it went on even 10 minutes after class and the next class with a police like interrogation.
So yeah, something tells me I'm not getting an A, but I'm happy after all because that's the kind of reaction I want from those types of professors.
Worth it 😎8
I provide hosting for my clients. About 3 months ago I discovered that the hosting company that I'd been using had been swallowed up by EIG, which explained why the tech support had gone downhill.
So, I jumped to another hosting company. Same shit different company!
Apparently the fact that my browsers sit at "connecting" for up to 30 seconds, and I get a "could not connect to" message half the time while I'm trying to fucking work on a deadline is the fault of some plug-in in a WordPress installation!
Oh yeah? Why then does this shit happen when I'm working on a pure html/css site?
Why then did it start happening after they "updated" my shared server?!
Oh, but the bastards suggest that I buy Cloudflare or pay for more space!
You fuckers made my work take 3 times as long, and you made an important migration fail!
Network places make mistakes. We all do. That's cool. Fucking own up to it, talk to me like a techie, and DON'T TRY TO BLAME IT ON ME OR MY TOOLS!
Fuck you! I think I'm gonna give Google Cloud a try, and do this shit myself!7
Work it harder, make it better
Do it faster, makes us stronger
More than ever, hour after hour
Work is never over
Oh the rant? This is gonna be a long one, and that was one of the lyric that stuck in my head for the past 3 days, Alive live album 2007 was glorious,
TL/DR, note to self, ALWAYS ask for documentation, and written evidence of any task & stories before start anything next time,
To start, death march was over, my team and I got some downtime(less work) for the past week, some of the guys were still busy with their respective stories (bugs, etc) but all in all it was not as much load as the past month before that,
It was peaceful and quiet, I was working bugs, some enhancement here, some enhancement there, it was nice for a change, until
One of the PO came by, asking if there's any spare dev, my team's tech lead suggests me as it's gonna be a front end work on web, good old HTML and CSS, and it's supposed be a task, not a story, I thought it's gonna be nice for a change, so I agree, the PO took me to the lead developer in charge,
Both of them briefed me, it's gonna happen in the apps (it's web alright, but in React Native, so no HTML and CSS for me), i was tasked to create 2 forms, and connect it with the microservice, "okay" I thought to myself,
Me: "Do we have the design for this?"
TL: "no but someone already made similar page you can either reuse it, copy paste it, whatever"
Me: *my bullshit senses are tingling, "that's one, what about the second"
PO: "I think the other team already made similar one too, lemme check, ah here it is, if it's all good I'll make the story for this"
TL: "okay, so there's that, can you start right away?"
Me: *tingling intensifies, "wait what about the flow"
TL: "it's simple, I will do this then it takes to your page, then this and that and that, and you do this and should be done, the MS is all there you just need to make the front end and connect it with MS, good?"
Me *hmmm intensifies, "ok let me check the available component first and see what I can do"
TL: "great, can you finish it by tonight?"
Me: *what the fuck intensifies further, it's fucking 6 PM, "nope, I don't think so, there's always complications when handling forms, not to mention copy pasting stuff"
TL: "it's ok, at least finish one by tonight"
Me: "..., we'll see"
Trying to reuse the form for the first page is no good, I had to duplicate the components, first one is working fine, the second template is almost done,
TL: "dude how's it going? It's been a whole day"
Me: "first one's finished, second's underway"
TL: "can it be don.."
Me: "today? Nope"
TL: "dood, is it done yet? It's been two days, what's left on the progress?"
Me: *for fuck's sake, "I just need to figure out how to connect between the first and the second and it's done
TL: "okay cool"
[different PO came by]
PO #2: "hey, hi, sorry, what's the progress on this?"
Me: "uhh hi, just need some unit test and it should be good for PR"
PO #2: "cool, keep me posted"
I finished, about to put a PR, I need the story ticket, I asked the PO and the TL
PO #2 gave me the ticket for the backend work which the TL is working on, no mentions or specs for th front end
TL gave me a ticket which was just created shortly the moment after I asked for it, only title and no description
Me: *shit, this will be interesting
Sure enough, the tester who is doing smoke test on my branch threw a fit, where's the spec, where's the design, where's everything, how is it supposed to work, the flow, the typecheck, translations, etc
The news came to be heard by the design & product team, and they came by, apparently no one knows what the front end was supposed to do, all everyone know is just the back end part,
In the end, it goes apeshit, everyone are confused, everyone have different understanding of the story, but at least what I've done doesn't went to ashes, after explaining everything to the design team, they decided that let it be, but there's might be some minor changes on the layout,
And then I began to understand why this TL and PO #1 had somewhat bad rap, while I was stuck with PO #2 trying to explain the relation between my task and the backend user story,1
Pretty late for week 86, but I just remembered my first paid freelancing web dev work.
While not my worst experience, it was a pretty horrible task given to me...
I was helping someone implement a new design on a pretty outdated (visually and technically) PHP site.
I was getting paid crap. The guy wouldn’t even let me look at the HTML, let alone touch it, so definitely no PHP work, either...
Literally the only code I was allowed to write was CSS. So, I’m supposed to be restyling, but I can’t change the structure at all, or even ADD CSS SELECTORS.
Fine, I’ll just make your site fragile as fuck by using nested relative selectors.
#main:nth-child(3) > div > div > div > button
As if that wasn’t bad enough, there were some pages...I shit you not...that had A DOZEN LEVELS OF NESTED TABLES.
WHY. DEAR GOD WHY.
For a simple checkout page.
So, on some pages I was literally trying to access elements through relative selectors, nested within levels and levels of tables. FFS
Needless to say, I did not work for him for long. Even if I wanted to deal with that crap, my time is much more valuable than what I was being paid.
I remissness about Yahoo site builder and talk about finding the record of the Google search that changed my life a long time ago and I think it's fucking great.
Earlier I re-installed google chrome but unlike every other time, this time I forgot to turn off the auto-sync feature. I only realized this when I opened gmail and it pre-populated my login info with the info of my very first, long forgotten gmail account.
So naturally I went exploring... after going through the mails I decided to check out the actual Google account to see if there was anything of interest there and lo and behold I found around 7 years of browsing history that I had no idea Google stored at the time.
As scary as it was to see I'm kinda glad about it now because aside from finding out that I was going through an Asian porn phase in 2008 I also found the one Google search record that changed my life.
It was a search to download Yahoo site builder followed by a bunch more on how to use it.
I had stumbled across a random article about it and it caught my eye because I needed a website for the grocery store I was a manager of back then.
Thankfully it was a fucking horrible WYSIWYG editor. I recall it acting almost identical to Word at the time - I would save and back up my site constantly because moving something 1px would fuck the layout up and burn everything to the ground, cntrl+z would try and do something, reversing only my last action while leaving the rest of the site in tatters and I didn't have the skills to understand or fix it...
Ultimately my frustration led me learn a bit of html & css and a week or so later It became apparent it would be easier to scratch code the damn thing so I uninstalled Yahoo site builder and started all over again.
Learning & building that site in notepad ignited my passion for coding and less than a year later I left my shitty dead end job to join a brand new tech company created with the help of a like minded investor officially employed as a developer. Let help you understand just how big this achievement was for me - I had been trying to find a job, ANY job in I.T even at a call center level without success for 6 years because I dropped out of school.
In 6 years as an active job seeker I only received one phone call about a job opportunity which ended very quickly once they realised they had misread my CV. In all those years I never even got a single job interview.
After that I spent the next 3 years rolling out and improving the cloud based loyalty card system I had written for my store out on a national scale and the rest is history. Since then I have never been judged by a crappy piece of paper, hated my job or struggled to find a new one.
What a beautiful search result that was to find.
I dedicate this rant to Yahoo, with my sincere gratitude for making a shitty WYSIWYG editor that was so bad it pissed me off enough to make me actually learn something.3
Fucking building websites from scratch at hackathons are a nightmare and a half to deal with.
There was a JS function that would show a modal with a map for choosing a location when the user clicks on a button. The function was supposed to inject some HTML into the modal, since that's how the library wanted it. The bug that I encountered originated from the to-be-injected HTML, where if you had a valid closing script tag (like "</script>"), some of the the code that was supposed to run just gets printed on the modal. But if you invalidate the tag by just adding a space somewhere (like "</ script>"), it would display nothing on the modal. You can also see in the image posted that Sublime is colorizing the text as if it was valid HTML, despite the fact that the entire string is wrapped in a single quote string and surrounded by script tags themselves and the other closing tags are not highlighted differently.
The more infuriating part is that after a bit of testing after the hackathon, I shit you not, that same code works if you put it in it's own JS file and imported that into the HTML one. Where the fuck is the logic in that??
In retrospect, I was probably too tired to think of that fix or I may have overlooked something stupid, but I can't help but feel angry that I couldn't even pitch at the hackathon (they only wanted working projects to be pitched) thanks to some arbitrary glitch that broke half of the functionality of the project. Next time, I'm either using a framework or just letting someone else handle the web dev stuff for a future hackathon.
Oh and one more thing...FUCK YOU HTML WITH YOUR TRANS-DIMENSIONAL BULLSHIT TAGS THAT HAVE A 10% CHANCE OF NOT WORKING AND FUCKING MY PROJECT SIDEWAYS WITH A RUSTY KNIFE DURING A HACKATHON. IF I EVER HAVE TO DEAL WITH YOUR BS AGAIN, I'LL PERSONALLY BITCH SLAP YOUR ASS BACK TO THE COLD DEPTHS OF SUBSPACE.
So, I'm about to be up shit's Creek. I need a new source of income, ideally either a new job or becoming a freelancer. I have been making intranet sites with ASP.NET for a while now, and I can tell two things:
1. It's too corporate minded, so I'll need a fucking degree
2. It's too corporate minded, so I'll be stuck with people like my boss, who still use tables to align content despite the project having bootstrap.
Basically, I'm anxious, terrified, and unable to figure out what comes next. Do I keep sending job applications and praying to whatever deity will listen, it do I start figuring out this freelance thing? If freelance, then how do I get into it? I'm terrified and desperate.1
Something I should've ranted a while ago, it just came to my mind
We had to learn html and css (I knew a lot about it already, heck, I'm building a website for someone)
So, we had to use object tags to embed parts of the page like you'd do with php
The thing that fucking annoyed me was the stuff that's in the files we had to refer to in the tags
The whole fucking header with its title and fucking meta tags and shit
Why the fuck would you teach it like that?!
I would've posted a picture but I was too annoyed by the code and deleted everything I had from that course
Ah yeah, they told us to use bluefish
I used notepad++ since I'm not a noon and I know my html tags and css stuff
OK I just tried to unlock my laptop with my fingerprint a thousand times and the smiley just fucking winks at me.
don't wink at me, fucking LET ME IN
It's dual booted with Linux, to try Linux, I'm actually liking it so far.
couldn't find any drivers for the fingerprint sensor yet, but we'll see