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 - "dev parent"
-
Sometimes I feel frontend development is like ancient magic:
Backend Dev: Oh no, I can't align this DIV properly.
FE Dev: No worries!
* Casts Flexius Boxius on the DIV *
* Div aligns slightly better *
BE Dev: But it's not centered!
FE Dev: No worries!
* Casts Marginis Automaticus! *
* Rolls natural 1 *
* Everything collapses *
* Website is on fire *
* Product owner cries *
FE Dev: No worries!
* Casts Flexius Boxius level 5 on the parent div *
* Everything looks beautiful *
* People are in awe *
FE Dev: You are welcome!
* Adjusts his robe and leaves *8 -
!!good news
!!great news
!!linux dev lappy recommendations?
So, @Root might finally have a job! Woo!
(Pending a background check, drug test, cavity search, ...)
I'm excited, and kind of giddy. It's an open-office setup, but the devs are chill, the boss is chill (reminds me a bit of myself thus far, just... nice), pay is decent too. Drive is hell, but everything else feels kinda cushy. The parent company is super-stuffy corporate and has an HR and red tape fetish, but supposedly I won't have to interact with them at all. I start as soon as all of the background check nonsense comes through. (Don't get me started on that, please.)
One of the questions that came up, however, is what type of system I wanted to use. I requested a Linux lappy, and that's sadly a bit beyond the parent company's nontechnical IT department. They asked me for links to a few specific machines on amazon for options. (MacBook Pro or equivalent)
That's where this question comes in: Which lappys make great dev machines and also have decent linux (Debian/Mint/Ubuntu) support? The role is backend Rails development + some devops, so I don't need super-fancy graphics, though I will be attaching a 4k (hopefully IPS) display because space and pretty colors.
Recommendations welcome, as I should get back to them today!43 -
You can't imagine how many lines of pure and utter horseshit, seemingly written in PHP, I had to dig through this whole weekend. (relating to my 2 previous rants)
How is it even possible to write code this unbelievably ugly?
Examples:
- includes within loops
- included files use variables from parent files
- start- and endtags separated to different files
- SQL queries generated by string concatenation, no safety measures at all (injection)
- repeating DB calls within loops
- multiple directories with the same code (~40 files), only different by ~8 lines, copied
- a mixture of <?php echo ... ?> and <?= ... ?>
- a LOT of array accesses and other stuff prefixed with "@" (suppress error messages)
- passwords in cleartext
- random non-RESTful page changes with a mixture of POST and GET
- GET parameters not URL-encoded
- ...
My boss told me it took this guy weeks and weeks of coding to write this tool (he's an "experienced dev", of course WITHOUT Git).
Guess what?
It took me only 20 hours and about 700 lines of code.
I must confess, since this task, I don't hate PHP anymore, I just simply hate this dev to death.
Addendum: It's Monday, 5:30am. Good night. 😉12 -
> Root struggles with her ticket
> Boss struggles too
> Also: random thoughts about this job
I've been sick lately, and it's the kind of sick where I'm exhausted all day, every day (infuriatingly, except at night). While tired, I can't think, so I can't really work, but I'm during my probationary period at work, so I've still been doing my best -- which, honestly, is pretty shit right now.
My current project involves legal agreements, and changing agent authorization methods (written, telephone recording, or letting the user click a link). Each of these, and depending on the type of transaction, requires a different legal agreement. And the logic and structure surrounding these is intricate and confusing to follow. I've been struggling through this and the project's ever-expanding scope for weeks, and specifically the agreements logic for the past few days. I've felt embarrassed and guilty for making so little progress, and that (and a bunch of other things) are making me depressed.
Today, I finally gave up and asked my boss for help. We had an hour and a half call where we worked through it together (at 6pm...). Despite having written quite a bit of the code and tests, he was often saying things like "How is this not working? This doesn't make any sense." So I don't feel quite so bad now.
I knew the code was complex and sprawling and unintuitive, but seeing one of its authors struggling too was really cathartic.
On an unrelated note, I asked the most senior dev (a Macintosh Lisa dev) why everything was using strings instead of symbols (in Rails) since symbols are much faster. That got him looking into the benchmarks, and he found that symbols are about twice as fast (for his minimal test, anyway), and he suggested we switch to those. His word is gold; mine is ignorable. kind of annoying. but anyway, he further went into optimizing the lookup of a giant array of strings, and discovered bsearch. (it's a divide-and-conquer lookup). and here I am wondering why they didn't implement it that way to begin with. 🙄
I don't think I'm learning much here, except how to work with a "mature" codebase. To take a page from @Rutee07, I think "mature" here means the same as in porn: not something you ever want ot see or think about.
I mean, I'm learning other things, too, like how to delegate methods from one model to another, but I have yet to see why you would want to. Every use of it I've explored thus far has just complicated things, like delegating methods on a child of a 1:n relation to the parent. Which child? How does that work? No bloody clue! but it does, somehow, after I copy/pasted a bunch of esoteric legacy bs and fussed with it enough.
I feel like once I get a good grasp of the various payment wrappers, verification/anti-fraud integration, and per-business fraud rules I'll have learned most of what they can offer. Specifically those because I had written a baby version of them at a previous job (Hell), and was trying to architect exactly what this company already has built.
I like a few things about this company. I like my boss. I like the remote work. I like the code reviews. I like the pay. I like the office and some socializing twice a year.
But I don't like the codebase. at all. and I don't have any friends here. My boss is friendly, but he's not a friend. I feel like my last boss (both bosses) were, or could have been if I was more social. But here? I feel alone. I'm assigned work, and my boss is friendly when talking about work, but that's all he's there for. Out of the two female devs I work with, one basically just ignores me, and the other only ever talks about work in ways I can barely understand, and she's a little pushy, and just... really irritating. The "senior" devs (in quotes because they're honestly not amazing) just don't have time, which i understand. but at the same time... i don't have *anyone* to talk to. It really sucks.
I'm not happy here.
I miss my last job.
But the reason I left that one is because this job allows me to move and work remotely. I got a counter-offer from them exactly matching my current job, sans the code reviews. but we haven't moved yet. and if I leave and go back there without having moved, it'll look like i just abandoned them. and that's the last thing I want them to think.
So, I'm stuck here for awhile.
not that it's a bad thing, but i'm feeling overwhelmed and stressed. and it's just not a good fit. but maybe I'll actually start learning things. and I suppose that's also why I took the job.
So, ever onward, I guess.
It would just be nice if I could take some of the happy along with me.7 -
The idea was simple. Create a div.
Add two 50% div's inside. Float them. Add clearfix to parent.
Everything was fine.
Noticed that one of the childs had a height bigger than the other. But due to an adaptive design, setting static heights did not work.
Simple fix. Add a height to parent div and set overflow-y to hidden.
It didn't work.
Tried using the legendary !Important (a.k.a. not important but important.) Didn't work. Set position to relative, set static height. Set the childs to absolute position with height 100%. Problem solved.
No. It. Didn't. Fucking. Work.
Tried every possible css combination could could fucking think off.
After 15 minutes (8 hours in dev-stress mode) realized the clearfix changed the div DISPLAY TO FUCKING TABLE. A TABLE. FUCKING TABLES CANT HAVE FUCKING HEIGHTS FUCK.
Anyway. 6 years after my first clearfix. I learnt something new about the code that saves my life every project.5 -
FREE!!!! At last, my kids are out for the whole day!!!!!!!
No more nagging, crying, bitching from them while I'm in the zone!!!!
FREE!!!!!!!!16 -
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.
like.
I needed to store a template of the child object markup somewhere, yeah? The video had me trying to store all of the markup in a `data-fields=" "` attrib. wth? I tried storing it as a string and injecting it into javascript, but that didn't work either. parsing errors! yay! good job, you two.
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.)
Just.
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.
Just.
I am so glad it's working.
I don't even feel relieved. I just feel exhausted.
But it's done.
finally.
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.7 -
Frontend dev for 10+ years here.
"We can't afford to hire you as a senior, so your job title will be 'Frontend Developer' and your tasks will carry less responsibility than expected from a senior"
One year in, team of 2 handling 3 projects.
After merging with the parent company, we got business cards, mine describe me as a "Senior Frontend UI Engineer".
"Well, our customers only trust seniors, otherwise we can't send you to them".
Meanwhile a former colleague earns >1000€ more a month.
Yeah, fuck you too bosses!3 -
So, first a bit of background:
We've got a parent class, owned by another team, and two child classes, owned by my team. One of the children is unused. (Already sounds bullshit right.)
On to the story:
6 months ago, I had to modify one of the children (add new functionality).
I try to modify the base class to add it, the senior dev in charge says "no, just add it on the child". So I do, then merge it in.
Yesterday I wake up to a high priority bug. Turns out the senior guy wants to add another child class, and wants the functionality I put in my class on the base class.
Even commented on my PR from 6 months ago asking why I didn't do that.
The fucker opened up a high priority issue assigned to me, asking ME TO DO THE CHANGE I WANTED TO DO 6 MONTHS AGO THAT HE SAID NO TO.
Fuck this shit. I have a meeting with him and my boss in an hour. My boss is pissed, I hope he tells the other guy to go fuxk himself and do the change himself.14 -
!Dev
So Malaysian government decided to say this in the press conference on Covid19 increased cases and quote "I didn't failed, is just I didn't get it to work."
And now my friend's brother who failed the exam try to convince his parent , by telling them "I didn't failed the exam , is just I didn't pass the exam ."
I genuinely think that Malaysian government is copying Joel Osteen.8 -
So I am interning at this company, and I am Coding in Go.
Now I don't have much exp with go so I'm learning it, and all of my team is cool cause they also had to learn Go. Anyways I am just petty intern-dev so everyone and everything is cool.
Migrating from python to go is quite hard.
Unlearn, You must.
What I have imagined Go, to be is:
While python has this top down approach to inheritance and polymorphism, Go has bottom up approach.
In Python child classes are derived from parent class but In Go child classes create a parent class. (this might be totally wrong, but that's how I've imagined golang)
Go is static wrt dynamic python.
I have coded in C for 1.5 years then I switched to python, so I feel that am familiar with static typing. The path that lies ahead of me shouldn't be too hard.
I would like to take a step further and say that Golang is C, but with modern syntax/semantics. It derives many of its features from newer langs like js, Python, etc while being a compiled language which translated directly to machine code.
That's all 😊
My team members are really great and supportive, I am about 10 years younger than them but we still connect and sync.
Everything is Great, Life is Good ❤️2 -
Day 1 of a new semester in college. Our 50 yr old H.O.D is a guest lecturer of this new subject called "Industrial Management" (why its included in the syllabus of CSE degree i wonder) . As there were only 6 students , the guy went on like a drunkard telling life lessons :
1) only 20% of the people in a company are only working. Rest 80% of them are just using sugar coated words at the right place ; doing politics and taking credits of the others .
2) those 80% getting benefits are usually the bosses (and in his example, the senior deans and H.O.Ds buttering the administrative dept and director ) and the hardworking 20% are the Juniors or the new joiners ( and in his example, the latest recruited ,honest teachers. Makes sense why we have shitty teachers :/ ). They altogether make sucesses to the company(although its just those 20%hardworkers doing the actual job) . But at the time of salary everybody gets the benfit.
3) Its always perfect to throw blames at senior or junior. (explaining how a parent complaining about the poor study environment to director is made to think that it's only the fault of his own child. blames going from director to dean to HOD to teachers to your own child's mistakes.)
4) Being your boss's favourite is super important. He gave example as : 2 teachers meets him with 100% results and 100% reviews. One of them is a known asshole with 0 knowledge, who makes jokes and sexist comments during the class, gives free attendence and question papers before the exam{therefore 100%reviews} . But he is dean's great ass-licker . The other one is honest hard-working teacher with real reviews and results. So he says he shows their combine results to the director along with his own buttering and ass licking, gets a hike himself and permit to give hije to one junior teacher. And who would it give hike to? The ass licking asshole, because that's how it works. What about the honest teacher?what reply would he get? Simply, appreciations and sugar coated words : "thank you for working so hard. But you did not do anything new. You were only hired to DO hardwork and give good results"
( and i was like fuck? Like seriously? Because that is something resonating with what i once heard in my internship :"yeah you are developing nice and all good, but that's what you are expected to do. You were only hired to achieve results, and you did nothing new". So that's what we are missing? Ass licking?-_- )
5) He believed its important to "look working" than being "actually working" . Quoting an example from his days as a dev, he told a story about how he once worked on a project with deadline of 1 month . He was young and worked hard and in 2 days completed the complete project and accidentally reported success to boss instead of his seniors. The boss simply congratulated his team(seniors and him) and assigned them another project. Later that day , he got an ass-wipe scolding from his seniors that if he had kept his mouth shut, they would have simply watched movies and relax for next 15 days, and submit the project during the salary time to gain bonus attention.
He even gave his short mantra or principle for such situation "kaam ki fickar kar, fickar ka zickar kar, par kaam mat kar " (get worried and tensed about the work. Display your tention and worries to the world (esp bosses) . But don't work.)
And there were many other short stories like that.
Mann, i was about to shout " you corrupt asshole ", but one thing He just told us about the importance of being in boss's good books made me stop ( nd he is a fucking HOD, senior to teachers)
But hell he told some relatable truths. Make me sad about the job life.
Bloody Office politics :| -
Soooooo, why is it that so often 'security' just means bloody mindedly getting in your way for no reason?
Coz I fail to see how whitelisting a subnet of private IPs that are already only accessible through company VPN presents any kind of security risk, especially since the blocking software is literally only on our company laptops and can be easily bypassed by being on the VPN on *any other device*. But nooooooo, we have to go to the this other company our umbrella company owns (who by the way are making every dev at our company redundant in six months) and beg them to change each individual IP address every time we create a service.
Really does feel like security often means either 'our parent company doesn't understand security so we just need to go through the motions and *look* like we are doing things properly' or 'we just want to get in your way enough that we win in the who gets made redundant fight because you can't actually get any work done and we can'.
Bonus points: on the website for the blocking software they use, it literally recommends using Internet Explorer for everything. I'm surprised they haven't tried to enforce that on us as well.1 -
Hi All !!!
Woah this is my first Post after 3 years not opening this website.
i don't know why.
but maybe between 2017-2020 my live got better so i don't think will have any Rant again.ahahaha *kidding
but today i see email, that i got sticker from devRant, woah i think i will go to devRant again.
wow devRant more cool than before , i don't think this website still open. i just want to check it. i forgot my password too. but luckily still got an access to my email.
So i want to tell a story about this weekly Rant,
Family Support? what the he** is it.
my family only look for money.
at my first job finding, i always pushed for find work in Factory/Oil/Goverment that will give a BIG money.
my first reaction to this i tell i won't do that. but overtime i think i will not talk about it again.
i just want to get Dev Job anywhere.
i don't know if this is the meaning of passion or something like that.
but from the first time , i try hard to get job only is software development.
and hey Maybe my Pray Listened by Almighty God.
so i got my first job as Fullstack developer that luckily accept me as self taught software developer. i don't have any formal education.
actually i only learn software dev from Lynda.com(not promotion) .
i learn algorithm, pseudocode . then i got passed the test of psudocode.
Then because the money is good in there. my parent just accept my first job. not complaining again till now..
maybe this is what they called ikigai??
i love software development so much....
but still i always have a Rant every day about it.
someday you like it, someday you hate it.
someday yo miss it, someday you regret it.
maybe that what is called Love.Damn... -
Name a shittier API to hook into than Magento's REST API.
Protip: You can't.
[bit of context]
Building 3rd party integrations via their REST API and keep unearthing "WTF?!" architectural design moments. For example: Pulling down products tells you if it has a configurable parent (product to store all master options, etc)... but fuck me if I want to know what the sku of that parent is, or any other means of accessing it!
How the fuck M2 is such a major eCommerce platform is beyond me. WooCommerce in comparison however: Beautiful API, Beautiful documentation, a couple of limitations, no big deal. I love WooCommerce.
M2 makes me question why the hell I became a dev sometimes.2 -
after exploring a lot of ui frameworks and architectures, i am trying to go back to android dev but again with the curiosity for the one single question that i had at the start of my career 5 years back : why is it's ui so complex?
can anyone help me understand it?
like comparing with the most basic ui framework : html/css/js, why android is so different? we got activities, fragments and views. the worst thing in android is lifecycles, that each of these ui components have.
The view lifecycle is simple to get over with : whatever is the lifecycle of its parent, is the lifecycle of view.
a view's parent is another view, whose parent is another view, whose parent is... and so on until we reach the root view which is stored by either a fragment or activity
therefore a view's lifecycle = lifecycle of activity or fragment
till here its very clear. the fuckup is simply in the next part:
WTAF is activity ?WTAF is fragment? why are their various functions called in the sequence they are called? oncreate, on start, onstartview, ondestroy... why?
activity is still somewhat okay, but fragment is completey weird af : it can be a part of activity: basically it can cover your complete screen and behave as an activity itself (so you don't get to say that activity === screen and fragment === view) AND IT HAS ITS OWN FUCKING LIFECYCLES! So does that mean fragment's fucntions cna also be called by OS?
what's more mind fucking, is the fact that android activity can destroy/pause or recreate fragments on its own, by some "views" like viewpager , or even hold multiple fragments as "alive" at the same time, using something called a "backstack" ??!??!
and each of these fragments in the stack can be called by system at any time? like wtf???
all these stuff is super confusing and i haven't even scratched the surface. the newer , more complicated stuff like viewmodel, livedata and again "lifecycles" has a complete seperate behavior and functionality of their own. plus the various "reality-check" scenarios like: when a user is streaming a video in picture-in-picture mode while keeping your app in split screen with maps in the second split, when a call comes and the video keeps running, and user rotates the device, let me know the clusterfuck situation for the 3rd fragment in your 5 icon navigation view currently at the payment page with 2 fragments and 1 activity in backstack!!!
god bless thy soul for this shitty framework isn't going anywhere , rather its super strong and getting more clusterfucked with new beautiful shit everyday.
(if someone can ignore my gentle language, i would really like to know/get redirected to some resources where i can learn more on this)3 -
Dev goals for 2022? Best and worst DX in the past?
Wish to prioritize customers with useful business goals who are open to sustainable web dev, usability and accessibility.
Want to use even more CSS and find a way to use new features like parent selectors without sacrificing compatibility.
Continue learning and using Symfony, but also continue with my full-stack side project using JS or even better TypeScript for the backend also for the backend.
Best developer experience: getting new customers for my own business after leaving a company last winter.
Worst developer experiences:
Corporate customers with large budgets and design agencies seem to fancy all the antipatterns I thought bad and obsolete, like carousel content, animations everywhere, and autoplay videos on the home page. Poorly written, poorly thought, and sometimes contradictory, requirements. Customers and agencies changing their mind halfway through a project.
"Agile" daily meetings, not giving devops necessary repository permissions, and making Webpack mandatory for no real reason.2 -
Trying to explain to (a more experienced) dev why it's not a god idea to do a exec( php '/var/www/xxx >> /dev/null) and then redirect the visitor.
The script is running a query that take some time and he want's to redirect the visitor and then fetch the result with jquery.
Tried to explain parent and child processes and pointed him in the direction with pipes and bakground process. After some discussion about forking and all the cons with that.
yes its PHP ;)
Gonna be exiting to see his next idea :S -
If a software company has 3 unique client projects, is it better to structure the discord server this way:
`-` is a category (parent) and `--` is a text or voice channel (child)
OPTION 1: category as project
- Project A
-- general
-- resources
-- design
-- dev team 1
-- dev team 2
- Project B
-- general
-- resources
-- design
-- dev team 1
-- dev team 2
- Project C
-- general
-- resources
-- design
-- dev team 1
-- dev team 2
OPTION 2: category as event
- Projects
-- projectA-general
-- projectB-general
-- projectC-general
- Design
-- projectA-design
-- projectB-design
-- projectC-design
- Resources
-- projectA-resources
-- projectB-resources
-- projectC-resources
- Developer discussions
-- projectA-team1-dev
-- projectA-team2-dev
-- projectB-dev
-- projectC-dev
- Meetings
-- projectA-meeting
-- projectB-meeting
-- projectC-meeting
?
What do you think is better.
PS. there is literally NO other communication service that can structure it exactly like this. Only discord is powerful and FREE to do it like this.
- Rocketchat isnt flexible enough to do this
- Slack requires me to pay first so i can do this
- Teams too
So fuck all of them I'll stick to discord unless someone can name me 1 single alternative service capable of structuring channels like this for a real time communication for FREE25 -
Any other primary single parents on here? How's your relationship with your ex? Why are you the primary parent?