@array@fosstodon.org avatar

array

@array@fosstodon.org

Life's an array of arrays. 101010 exactly.
Philosophy & Programming. I love coding, comic-books (and no-comic books), films and (dark and loud mostly) music. I suck at all of this. <3
:sway: :gnome: :archlinux: :debian: :ubuntu: :laravel: :javascript: :nodejs:

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

array,
@array@fosstodon.org avatar

@danielsiepmann "No architecture" is something I won't dare say, but... No comments, no documentation, and enough spaghetti to feed the whole of Italy for years to come. XD It's pretty old Java code, fed for decades long by external contractors with, from what I've been told, little to no supervision, to finally create an ugly Frankenstein monster continuously patched, but who nobody dares to really fix. It's really amazing, it somewhat (mostly) works, and it's really difficult to work with. :)

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. ;)

ninokadic, to random
@ninokadic@mastodon.social avatar

Had a job interview today. Wish me luck! ๐Ÿคž๐Ÿป

array,
@array@fosstodon.org avatar

@ninokadic Best wishes! :)

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

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

To be fair, this is a monster which has been fed for decades by very different people. And me, as newbie as I am, can't brag about doing this much better. Well, maybe a little better, as I can at least see what is obviously wrong. But this does calm the impostor syndrome a bit, so everything's fine. ;)

Anyway, I'm incredibly happy with $newJob, really enjoying the workplace and colleagues. And, better or worse codebase, I'm really having fun playing with it. :D 2/2

array,
@array@fosstodon.org avatar

@joel Very fun indeed, and the people in the workplace is very cool, I haven't felt any pressure yet (no need, I can put more than enough pressure on myself!) XD

array,
@array@fosstodon.org avatar

@supernov For me, it's easy: I just have to compare with what have been my jobs until this point. A clue: this is the first one I can do sitting in a chair. ;)

array,
@array@fosstodon.org avatar

@fedops There's a VS Code plugin which does the magic of showing up who and when did the last commit on the line you put the cursor on. As Jim Morrison put it, "No one here gets out alive". XD

The comments are neverending fun, too. I've seen one which goes something like, "[Name of one of their colleagues], I've done [this and that, pretty weird stuff] so maybe we can bypass [something they didn't really understand] and [hopefully fix the mess they were requested to fix]". XD

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

array,
@array@fosstodon.org avatar

And it seems I'll be doing full stack, but #Java mostly. I know, I know, but indulge me: I just love Java, so I feel lucky. And more important, I've found a very cozy workplace, the team seems to get along fine, they meet every Friday after workday for beers and chat, and they have been very helpful and welcoming. This is what I signed for when I began Programming, and quite different from what have been my early experiences. I hope this ends up as well as it is promising now. :D

array,
@array@fosstodon.org avatar

@tulpa I just hope I won't be laid off in a few weeks, then... But if so happens, well, that's life. XD

The good part is that I'm not just setting up stuff, I've got liberty to come to other coworkers' places and see what they are up to, they explain what they do and I can even make suggestions. It's been just two days, but I'm really enjoying this, so if tomorrow they lay me off, I still get two days of enjoyment. :)

array,
@array@fosstodon.org avatar

@tulpa Those long years wandering in the Philosophy department had to pay off! XD

array,
@array@fosstodon.org avatar

@fedops As I said, I know, I know... Just take into account that my experience so far includes not only Java, but PHP and JavaScript (full stack JS!), so it's either learning to love the underdog, or live a life of pure misery. XD

Now seriously, Java is way better than some people give it credit for. You can say whatever about it, but compared to "[new, hip and shiny]", it's really battle tested, had years to improve, and the community, docs, ecosystem etc are just huge, so that may count. ;)

array,
@array@fosstodon.org avatar

@tulpa Not Cioran, probably. XD

array,
@array@fosstodon.org avatar

@tulpa @fedops There's code in prod ranging from Java 6 to 17, and it all does the job. It happened to me that upgrading a Node project's dependencies just a few weeks old broke said project; just saying. ;)

array,
@array@fosstodon.org avatar

@fedops @tulpa Indeed, I've read some performance comparisons and Java usually does quite well. Anyway, I believe it could happen to me what I've seen many times, people very often hate what they use at work, as there's no silver bullet and the more you use something, the more problems you can find, so I may change my mind. I'll just enjoy my Java honeymoon while it lasts. XD

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

amin, to random
@amin@alpha.polymaths.social avatar

Welp, just finished my school year.

array,
@array@fosstodon.org avatar

@amin Congratulations! ๐ŸŽ‰

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

array,
@array@fosstodon.org avatar

@ntha @hydrian @blu256 No problem, I guessed you just missed the context. And out of context yeah, that maybe sounded like a trigger, so sorry about that. ;)

Sigh, I don't have much experience (finished my programming AD less than a year ago), but I've already worked with PHP and JS, and next Monday I'll start a full stack position with Java... So I may know a thing or two about programming languages being "punching bags". :P Yet I really enjoy all of them!

array,
@array@fosstodon.org avatar

@ntha @hydrian @blu256 Fair enough, and agreed. For me it will be Java now, but I guess that mutatis mutandis it all applies. Java (and PHP) can be seen as old, junky languages, inferior to those new and flashy ones, but most web dev job offers I see are precisely Java (a lot) and PHP (WordPress), if we talk backend/ full stack. I love them both, though. As you say, the maturity of the ecosystem really pays. :)

array,
@array@fosstodon.org avatar

@ntha @hydrian @blu256 Same, exactly. Actually, seeing what you already posted in your profile I think there's another thing we may agree with: https://fosstodon.org/@array/112348049196060708 I'm not in principle against frameworks, ORMs and so on, but for personal projects and as a learning experience, going down the abstraction layers may have its benefits too! (And yeah, I'm using "raw" SQL statements -sanitized, though- in my project, too).

array,
@array@fosstodon.org avatar

@ntha @hydrian @blu256 That's great! In Java I'm using dedicated validation classes, then declaring the SQL statements as constants in its own package with placeholders when needed, and then service classes which use the PreparedStatement interface. These are finally called by the servlets, and the data is passed to .JSP views. There's a bit more going on (I have some extra interfaces and factories), but that's the gist of it. Going minimal is great for experimenting and getting a better grasp!

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. ;)

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