Posts

This profile is from a federated server and may be incomplete. Browse more on the original instance.

array, to random
@array@fosstodon.org avatar

I've been a couple of days to write... Say, about 5 LOC. In the meanwhile, I've read thousands, run the debugger more times than I can count, read a lot of external docs and try almost hopelessly to figure out what was really happening in the code soup I'm struggling with. Now I'm almost sure that my solution to what on paper looked like an easy problem to solve should work and hopefully won't break anything else.

Or not. :P

tulpa,
@tulpa@fosstodon.org avatar

@array That sounds just like how my dev coworkers talk about the old codebase. The new version is much less terrifying.

array,
@array@fosstodon.org avatar

@tulpa Yeah, there's, I've been told, a new web with microservices being done in substitution of this crazy old monolith. But when will that be on prod, nobody knows. I'm totally in for the challenge, though; it's unnerving as it's great when you finally figure something out in this labyrinth. ;)

array, to random
@array@fosstodon.org avatar

I'm experiencing first hand the beauty of, ahem, "legacy" code in prod. Four code blocks in a row that insert a break statement... After a return one; up to 13 levels of nested if- else if blocks (something so common my colleagues call that figure the "Doritos"); one class with a couple of thousands lines which has class declarations in the middle of pure spaghetti functions; TODO comments from a decade ago; functions with 3 (!) different declarations to perform the same exact logic... 1/2

tulpa,
@tulpa@fosstodon.org avatar

@array @fedops Just last week, I wrote: // this is terrible.

And surprisingly, it passed code review without comment!

array,
@array@fosstodon.org avatar

@tulpa @fedops I have a colleague which, as far as I can judge, is quite brilliant. And today it's the third time in a row that happened to him that, fixing some frontend code in production, he's breaking something else, no matter code reviews. This is a whack-a-mole game against a hydra monster, so yes, any code just needs to grow to some critical point to be terrible indeed. No code review can't do much against that, it would seem; so maybe they just admitted that to you. ;)

array, to random
@array@fosstodon.org avatar

The ETA just for setting up the development environment in $newJob is no less than 2 weeks, but it's no problem if it's two months. I know many of you are used to this kind of scale in dev work places, but I'm kind of terrified (that, plus the ~300 person IT workforce all in the same place, the git repo with more than 100 repos -and this is, apparently, just the tip of the iceberg-), the commits in 1000+ LOC files made in the past century... This will be fun, fortunately. And sadly. :P

motofix,
@motofix@mamot.fr avatar

@array @fedops @tulpa after 20 years of coding, having worked with others ( C, C++, PHP, js, Rust, python), well I think Java is most of the time the Silver Bullet for any serious, long lasting, industry grade projects, and recent versions get it closer :-)

array,
@array@fosstodon.org avatar

@motofix @fedops @tulpa My company's Big Brains seem to agree with you! ;) Yeah, I'm almost crushed by the raw quantity and the complexity of the code base I'm just beginning to get a peek of, meanwhile Java has managed to work as expected for decades here, no sweat. :D

array, to php
@array@fosstodon.org avatar

My first was 8.0, still in school, and I confess that I began learning it with the prejudice of it being a junky, terrible language everybody was making fun of. Fast forward ~1 year later, after finishing my internship, where I used full stack mainly, and having discovered that not only it wasn't that bad, but really a pleasure to work with. Not perfect, but perfectly suitable for its use cases and, what's perfect anyway? So reading this has been a joy. :D https://developerjoy.co/blog/php-doesnt-suck-anymore

ntha,
@ntha@mastodon.social avatar

@array @hydrian @blu256 Do you assign data to Dto/Model classes (for better editor integration) or just keep it as a HashMap of some kind? In PHP I've been lazy and just keep everything as an array, even though for type support casting to a Model class would be better.

array,
@array@fosstodon.org avatar

@ntha @hydrian @blu256 No, my models declare the attributes (mapped to the database ones), with constructors and getters/setters. That way I can pass the model objects through, for example, factories and interfaces (I use generics) up to the views. In this I was clearly "inspired" by the way say Laravel implements the MVC model. I'm just a noob so take this with a grain of salt, I'm probably doing more than one thing wrong or at least, not the best way possible. ;)

array, to random
@array@fosstodon.org avatar

Commuting to $newJob will be complicated. The place is close to the beach, so the public buses, at least in the hot season (so half of the year or so, and counting), will be full of tourists to the point that I'll likely miss more than one because full capacity overflow.

I still refuse to have a 🚗.

indie1337_1,
@indie1337_1@vivaldi.net avatar

@array I meant like... An actual pedal bike or an actual scooter :-P leg-powered

array,
@array@fosstodon.org avatar

@indie1337_1 Ah sorry I misunderstood. :P Well then I just commented before why this is not really an option: https://fosstodon.org/@array/112382938215759310 Public transport in my city is far from good, but all things considered is still my only reasonable option, at least by now. :(

array, to Java
@array@fosstodon.org avatar

I've got the impression that the doesn't get all the love it deserves, but I'm quite a fan myself. It's really impressive how featureful it is, and sure doing would be way harder if I couldn't count on it. My $newJob, I've been told, makes using Eclipse mandatory for Java dev, so this is great news for me. :)

array, to ubuntu
@array@fosstodon.org avatar

I, for one, would like not to having to think about my OS much. Just knowing that it's FOSS, and get sh*t done. So here I am, mostly stuck on for dev work because reasons, and not a day I don't read someone telling us it's bad and we shouldn't use it. It's a bit tiring and I've got enough on my head to consider a switch ATM. So note to myself: keep using whatever works for me while I don't have to compromise personal values, and thus become:

array, to Java
@array@fosstodon.org avatar

My project goes on, as a learning practice preparing for $newJob. I have, on purpose, excluded any frontend frameworks, just plain old HTML and CSS, and some JS strictly when needed. I build my templates with JSP, and I'm not using any backend framework. A bit more work? Maybe. But it's crystal clear, less bloated, and so fast! Plus, I get to see behind the abstractions, implementing models, services, factories, servlets, utils, etc. all by myself. In other words: I'm having fun. :)

array,
@array@fosstodon.org avatar

@HaraldKi I 100% agree with this and your blog post, thanks for sharing. I've been bitten by, say, trying to override Bootstrap rules, or trying to upgrade the npm deps for a Express+Vuetify project weeks later after starting such project and everything breaking... Java is, I believe, more "boring" in that sense. ;)

That said, I was taught straight "vanilla" web tech in my AD, and though I like, say, Laravel, the "magic" you mention, and to rely on so many moving parts... It's a trade off. ;)

array,
@array@fosstodon.org avatar

@HaraldKi For CSS in particular, I very much prefer straight CSS rules. I have a complete control (well, to a point; CSS is as easy as it's really difficult to get right!) on my views, up to any detail. And JS, sure say Vue makes some things more straightforward, but writing vanilla JS puts you, again, in control, no magic here (dynamically inserting data with JSP apart), and for a pet project more than suffices. Plus I've noticed how fast it is, compared to the Node/Vue project...

array, to random
@array@fosstodon.org avatar

What ends with my patience when I'm in "helpdesk mode" is that most people I'm trying to help seem to have learned to use their GUIs just by repetition and memory, and fsck heuristics. Switch a button's position, move a menu item, and they are lost. No matter how many times you say, "you just have one screen to explore, so just read what's there, move your pointer, read the tooltips, click and read the menus..." But it's parrot's way or the highway. 🤦‍♀️

array,
@array@fosstodon.org avatar

@justincroser I use Sway myself and TBH, there's not much to play with, as it's mostly not responsive to mouse clicks, no icons, no nothing... If you don't know the kb shortcuts you are mostly lost. But that's a bit of a corner case. ;)

array,
@array@fosstodon.org avatar

@justincroser Yeah, I've sometimes given my laptop to some people and asked them to open the browser or something like that just for a laugh... People just think that you are weird I guess. I'm pretty ok with being a weirdo, you know. XD

array, (edited ) to random
@array@fosstodon.org avatar

I can relate: "From a Lorry Driver to Ruby on Rails Developer at 38" https://www.writesoftwarewell.com/lorry-driver-to-rails-developer-at-38/ I was a bookstore clerk with nearly 50, I went back to school instead of doing a boot camp, and I just got a full stack ++PL/SQL position, but otherwise this sounds quite familiar. So the obvious moral of our tale is "you can do it, if you work hard and are passionate about it". But is it? I've seen younger, about the same age and even older folks try and fail. And it's OK. =>

array,
@array@fosstodon.org avatar

What I mean is, I think tales like ours can maybe be inspiring for other people to try a similar path. But is not really easy for everybody, we all have our own set of potential skills which can be a match for this... Or not. Try and fail just likely happens to everybody who dares to venture out of their comfort zones. And I think it's OK. Knowing our own boundaries and trying to venture beyond them has its own value. No matter if you got it or failed, you are great. <3

array, to random
@array@fosstodon.org avatar

This morning I received a call to have a job interview this evening, dev position, in a big enterprise ("big" according to my humble standards; ~200 people in the IT department I've been told, a noticeable change from being just 2 developers in my former job). Stakes are high and probabilities are low, but having another chance when everything seems to be going south is nice. :)

teapot_ben,
@teapot_ben@glammr.us avatar

@array congratulations!

array,
@array@fosstodon.org avatar

@teapot_ben Thanks! :D

array, to Java
@array@fosstodon.org avatar

Back to the basics. I've started another web pet project, this time with . And I mean plain vanilla Java, with no backend or frontend frameworks. I get the utility of those when doing corporate stuff, but for a relatively simple web project, with time on my side? It more than suffices, it will likely be way lighter, and I get to see behind some of the framework's abstractions, so it's another opportunity to learn. :)

array,
@array@fosstodon.org avatar

@eramirez I've done Laravel, Spring Boot, Express and Nuxt so far, and they are all great. But I may have an option to get a gig in a place where they don't use any, just Java. That's reason number one. Other reasons are as stated: the frameworks tend to put abstraction layers on common operations, and I'm always curious to understand what happens behind the curtains. Plus, I'm really having fun designing my own MVC with "basic" tools. :)

array,
@array@fosstodon.org avatar

@eramirez En otras palabras: ¿Para qué hacerlo fácil, pudiendo hacerlo difícil? XD

array, to random
@array@fosstodon.org avatar

Today I've learnt first hand of an enterprise with an IT staff of ~200 people stuck on a Java 6 (from... 2006!) codebase. Correct me if I'm wrong, but I guess they must be on their own, because it's been a while since it went EOL. That makes one think again on how difficult must be to migrate such huge codebases... And how difficult must be to patch it to keep the engines running on a daily basis. Sigh, computers were supposed to make everybody's life easier, but. :P

fishfinger,
@fishfinger@kinky.business avatar

@array It’s more that you don’t want to delay a launch or kill an astronaut. Things like the Mars missions have their launches scheduled decades in advance when the planets literally align. If you miss the launch the (contractual) costs are high.

And astronauts are just too valuable to risk. They are idolised.

array,
@array@fosstodon.org avatar

@fishfinger Makes sense. :)

array, to random
@array@fosstodon.org avatar

The story of my life when developing some web project is mostly always the same: I can surf on the code waves for a while... And then some apparently minor, silly detail got me stuck for hours. Now it's been a Vue component that refuses to display a selected placeholder by default, so you don't have to stare at an empty select bar. Yes, I've tried that already but no dice. Will I make it? Yeah, or bust. :D

lyokolux,
@lyokolux@fosstodon.org avatar

@array It follows the Pareto's rule: 80% of the works can be done very fast.

The less complex the tech stack is, the smaller is the last 20% 😄

array,
@array@fosstodon.org avatar

@lyokolux Yeah, and yet complexity and simplicity have somewhat different meanings when talking about computers. I mean, binary is the simplest language one can "talk" to a computer, but the more complex to write. Bloated frameworks with lots of dependencies are probably the more complex ones, but the simplest to write. The extra abstraction layers have their obvious advantages, but technically simpler approaches have some of their own. It's very difficult, this! XD

array, to programming
@array@fosstodon.org avatar

I have a silly question for you, Fedi. I have a 1:N relationship between artists and countries table. I know countries may change, but let's assume that it's a fixed list for now. What would you do to retrieve the countries data to use in a form to create a new artist: query the DB, or just declare a constant array in the form view, and why? Thank you in advance. :)

ascherbaum,
@ascherbaum@mastodon.social avatar

@array @dani I think this kind of fits here:

"There are 2 hard problems in computer science: cache invalidation, naming things, and off-by-1 errors"

You will always find problems keeping your fixed list up to date. In the most egregious ways.

array,
@array@fosstodon.org avatar

@ascherbaum @dani That's a good point indeed. As I'm mostly playing around now, I don't really expect that many showstoppers... But, little experience as I have, and it's been more than enough to know that things tend to grow, and then a little change needed somewhere breaks too many places... Specially if you weren't ready for that in advance. :) Thanks!

  • All
  • Subscribed
  • Moderated
  • Favorites
  • megavids
  • kavyap
  • DreamBathrooms
  • thenastyranch
  • magazineikmin
  • khanakhh
  • InstantRegret
  • Youngstown
  • ngwrru68w68
  • slotface
  • rosin
  • tacticalgear
  • mdbf
  • Durango
  • JUstTest
  • modclub
  • osvaldo12
  • ethstaker
  • cubers
  • normalnudes
  • everett
  • tester
  • GTA5RPClips
  • Leos
  • cisconetworking
  • provamag3
  • anitta
  • lostlight
  • All magazines