Best posts made by AgentDenton
-
RE: The Official Funny Stuff Thread™
@hungrier Saw this in my country (South Africa).
It's even funnier when you realize just how unfortunate the CUM name is. It's an acronym for the Afrikaans name "Christelike Uitgewers Maatskappy" (Christian Publisher Company). As in the religion. Bibles and all sorts of related books
How they haven't changed their name in the last 20-odd years is beyond me
-
RE: What the forward?
More companies are ditching anxiety-inducing corporate lingo for what they see as gentler terms.
Brilliant. Swap one anxiety-inducing term for another anxiety inducing term in future. Pat yourself on the back, we solved the workplace
I'm sure that in a few years "feedforward" will be replaced by another inane term because "feedforward" would be the bad word.
It really irks me when people think this is the solution instead of actually treating the underlying problem (but that would take much more work than changing the subject line in an email / meeting request). If your manager doesn't have the people skills to not be the source of anxiety (or worse, if they thrive on that sort of thing) then no amount of changing the terms would fix that...
-
RE: The Official Funny Stuff Thread™
@Benjamin-Hall I recently had a client who would cut me off mid-sentence and carry on with incorrect inferences and starts talking about how incorrect my logic / approach is. Then she would ask a number of questions, and for each of those this whole process is repeated.
Ironically, if she would just let me finish my statements, then it would make her understand the big picture, and also cater for the next 5 questions she would've had
Among other things, this client of mine really tested my soft skills, since I eventually got through to her and made her listen to the whole statement. She still does that to one of my colleagues, though
-
RE: What users say versus what they mean
"Windows / $application suddenly stopped working" => "I changed something but conveniently forgot what, and now I need you to hunt down what I did"
Bonus points if you point the change out to them and they remember it like "Oh yes, of course, I did that."
-
RE: Outlook being Outlook
Don't you just love it when an application has a dark mode, yet forgets about it when they have to display an error?
Fortunately you can select and copy the text, but that's beside the point
-
RE: The nerdy jokes thread (bonus original title mode!)
Seven has the word "even" in it, which is odd...
-
RE: What users say versus what they mean
@Luhmann you just reminded me of this, since I've mostly seen this with our IT dept's manager
-
RE: Internet of shit
@Lorne-Kates When I saw this strip loooong ago, I inferred that the joke was regarding the VHS and BetaMax cassette compatibility. It illustrated to me that they knew something about the tech, but dangerously little
-
RE: Is DevOps also a manifestation of white male privilege?
My 2c on Agile is that I've always seen Project Managers or PHBs cherry-pick the parts of Agile they like, and then discard the rest. The manifesto prefers one thing over the other, but doesn't totally throw it out. This is a thing that everybody above my (lowly) developer level in a project conveniently forgets and refuses to acknowledge.
More concerning, it seems to be a magic tool to hide the fact that they just want to micro-manage something into being delivered sooner, despite the fact that this scenario below happens all the time.
@weng said in Is DevOps also a manifestation of white male privilege?:
Yeah. But there exist innumerable situations where the "project" makes literally no sense and is utterly useless, or worse, is actively harmful if not delivered as a single atomic unit.
Consider, for instance, a project to add the ability to cancel an order with a single click of a button.
In order for this feature to work, it has to be cancelled across the entry frontend, invoicing, inventory, production management, shipping, etc.
In order to be able to determine if an order can be safely cancelled, all those same systems need to determine if it's past the point of no return (inventory irreparably consumed, already shipped, already billed and paid, etc)
I have witnessed agile advocates try to slice this actual real world project into 1 week sprints.
You hit the nail on the head there. I'm currently in this situation where agile-ing it actually adds to the time required to deliver, which the PHBs don't care to understand. One of them committed to a date without understanding the scope of the project, and what's required to deliver, and the crap rolled downhill...
Agile also assumes that there is a near perfect separation of concern in the structure of the code. Everyone would like to think that their code is perfect, and given the chance to create something from scratch could actually maybe even deliver on that. The sad truth is that very few of us have truly created something from scratch as a line-of-business developer, and our careers have mostly consisted of supporting existing codebases with little to no separation / sense / will to live.
So imagine my motivation when (using the experience of many such projects over many years) I'm just placated into a false sense of "no, this time will be different" when I predict specific bad things, but then nothing is done about it and those predictions come to pass.
-
RE: The Official Funny Stuff Thread™
@onyx Sites like 9gag equate emojis with cancer. They'll repost screenshots from Twitter and "scratch" out the emojis, often commenting "now with less cancer"
-
RE: I think I know what makes a truly competent programmer
I've worked on a system before where the lead senior developer has constructed such a jenga tower of baklava code that even his own juniors sometimes complain about how difficult any given task has become.
The jenga tower description is because when he was asked to add another bit of logic to a specific business rules engine, his response was "It's already so complex, I'm afraid that any changes we add here might break the whole engine."
We were stunned. Good senior developers don't code themselves onto such a precariously placed tower where one change threatens to topple the tower. And this is just one of the instances where he's outright tried to convince the customer into a more complex method because his code can't handle the (relatively) simple request. In this instance, we had complex building blocks for a relatively simple problem.
There's also the problem about how the schema of the database doesn't allow for optimized queries, or even storage of data.
And none of this has even the slightly forgivable result of a good UX. Users constantly tell us that it's hard to find some data, or that the system is slow, or that the system is just wrong (as plainly as that).
And then the worst of it all is that the system is so reliant on practises from one country in this international firm. From things like currencies, to business processes for similar entities, to the fact that the system will eventually be rolled to countries where English isn't the preferred language. The bigwigs are oblivious to the amount of effort this will take to take it to the other localisations, but it's the kind of effort that almost justifies a complete rewrite...
Wow, I was wondering whether or not to post, because this system has traumatized me so much that I go on a huge rant every time I think about it... I sure am glad I left that system a while ago
-
RE: The Official Funny Stuff Thread™
@error This is one of those types of programmer jokes my brain constantly battles with.
On the one hand it's a very simple and funny "hahaha extra commas messes up the column layout" joke. Just give it a quick lol and move on.
On the other hand, I've had enough such issues in the past that it's less funny and more like "nowadays they would account for that by quoting the columns / use a different delimiter / different export format"
Yes, I know, I'm not always fun at parties
-
RE: Signs your code is unmaintainable
-
Baklava Code (leaky abstraction)
At my former employer, the codebase was so heavily layered, with no real benefit for most of them. These layers are there for "separation of concern", but if separation doesn't exist, then it's pointless. If even the simplest change to code requires going to 3+ layers, then I fear for the maintainability. -
Not Testable
Now, I'm not asking for full-blown unit tests, but if I can't stick a console application in the mix and add a few references to projects to run through methods in a debugger, then I start worrying. -
Sweeping statements
This is more of a "people in charge" sort of problem (although I would argue us developers should have the backbone to debate this more often. Very rarely is a practice "all or nothing". And quoting "Best Practice" shows that you only have an academic knowledge of a problem / topic. Some real world experience helps change that from a binary choice to fuzzy logic. -
Inventing your own language
The last place had a portion of the system which would serve as the content of pages (even though this wasn't a CMS), and they needed some bits of logic. Now, the content manager was by no means a developer, but needed stuff like conditions, showing / hiding, enabling / disabling etc. Long story short, instead of having a few blocks of standard JS code to select and store, the lead developer built his own parser for XQL. This wasn't a query language, but rather a slightly more lay person readable of basic JS functions. Of course, typos and incorrect use of punctuation lead to more user frustration than it attempted to solve. And naturally, the documentation for this language lies within X's head... -
Saying "That's how we do it here"
^^ is NOT the way you explain things if you expect your resources to learn and build initiative.
-
-
RE: Found Examples of Word Salad
Came here expecting to see today's Dilbert
https://dilbert.com/strip/2020-08-27Also, this clip which I believe caters for the "Experts would understand what is said" point.
https://youtu.be/RXJKdh1KZ0w -
RE: Found Examples of Word Salad
@djls45 Now you made me dive into research mode here
Turns out this is fiction:
The turboencabulator (in later incarnations the retroencabulator or Micro Encabulator) is a fictional machine whose technobabble description is an in-joke among engineers.
They had me fooled
-
RE: How to (not) take a selfie in Russia
The one that takes the cake for me is #9. I can only imagine that during the tumbling this person would whip out a miraculously unscathed iPhone and trying to take a selfie and figuring out what hashtag to use
#TheySeeMeRolling
#RocknRoll
#HashTag -
Pretty Aggressive Code
So my first submission is pretty meta, but it just has to be asked...
Have you ever come across some pretty aggressive code? Not code that is destructive, or buggy, or even poor performing, but rather where there is no explanation other than the developer had to specifically code a certain behaviour into the application? I'll share my latest encounter of this...
A colleague of mine had to create a SQL view of client data for another set of developers, who had prescribed the columns they wanted present in the view. Standard stuff. He wrote the view, and sent it to the other devs. During testing, it quickly came about that they needed to see what type of client each record represents. No big deal, there's a ClientType field, and my colleague offered to add it to the view.
Their response: "No. Don't add another column to the view. It will break our process."
"Process" being the hereto unknown jargon for "routine that consumes the view".Really? Break the process? I can't help but think that this "process" includes code which:
- Queries the view (potentially a Select * From ClientView)
- Count the number of columns returned (Bonus points if it compares the names of the columns to what it expects)
- If the above yields a number different to the actual amount of columns it wants, then throw an exception.
The logic is sound for when too few columns are returned, but too many?!
So the workaround to this (based on the other dev's suggestion): Prepend the ClientId column's value with the Client Type. But not the integer value stored in the field. Nope, join to the lookup table and get the first character of the display value. I haven't even mentioned the fact that the ClientId is a Guid.
So in short, because they coded an aggressive routine in their application, we can't add an additional column, but we also now have to butcher a Guid to look something like P-29ADE5D6-3EEB-43AC-8D5A-0F0F3EFDCB7D
At this point, I am without words...
-
RE: The Official Funny Stuff Thread™
@topspin said in The Official Funny Stuff Thread™:
if (foo == true)
In my very early days of coding I used to be that guy. Then, one day one of the seniors in the team simply explained that at runtime I'm basically asking
if (true == true) or if (false == true)
and it just clicked. I have not written it like that ever since (now nearly 15 years later)...
-
RE: Joberate - does your boss know you're looking for another job?
lol, I've seen a few times how people actively told their bosses that they're looking for other work.
In one instance, PHB asked me if Joe was coming in, since it was much later than his normal 9:00 starting time. We told him we hadn't heard anything from him, and so PHB proceeded to phone him. Joe said that he just finished an interview, and is on his way to the office.
-
RE: Signs your code is unmaintainable
@AlexMedia said in Signs your code is unmaintainable:
Button12_Click
was doing database insertsThis brought back memories of a support call I had to help out with many years ago. Written by the boss of the company before I started there, and now us mere mortals had to support it. Trouble is, it was littered with sh!t like Button12, Combobox7, Textbox6 and the like.
Of course, nothing was done with some form of business objects. Everything was driven with control values.
Man, did I hate that. I couldn't understand why the normal support guys didn't refactor the names. One of them actually had a printed copy of the design view with the control names penciled in
-
RE: Care to explain your avatar?
Mine is from the 2000 video game Deus Ex, a character named Daedalus. In the era when AI was still just science fiction, this was one of my favorites. The face, the voice, the way it was introduced to you in-game, somehow it just stuck with me all these years
And now I have to install it again
-
RE: Outlook being Outlook
@e4tmyl33t I have the same experience and use the same workaround. I've also found that the Outlook Web App is much better for search than the desktop app.
For some odd reason the desktop app becomes near unusable after doing a search for mails from years ago, even after you found what you were looking for and moved on. It becomes tedious to close and open Outlook because I accidentally searched a term that applied to stuff from ages ago
-
RE: Funny Placenames
In South Africa we have the Pilanesberg
The pronunciation being more like "pee-langs-berg", and in the local Afrikaans language sounds a lot like "dick next to mountain".
-
RE: Contracting: First Blood: Part 2
@lucas1 said in Contracting: First Blood: Part 2:
otherwise the Team would be falling behind without my expert help.
I turn up and I don't have a computer, email or corp IM access and no local admin rights so I can't install anything like Visual Studio.
These happened to me at two different jobs. For the first one, it was the same kind of story. Huge upgrade project, rest of the team has already started (but most of them lack the required experience), would hit the ground running, can redesign and refactor, seemed like the kind of thing that would really give me experience in the platform & language which I wanted to pursue. Then I started there, and then there were loads of hold ups and bulls hit around purchase orders and the like. So they gave me busywork in !(the platform they hired me for) which was something crapped out as a POC, and now sold as a working project to another client. I rewrote the abomination, and kept the client happy. Almost three months in, and now the documenting & planning process started (at risk), but "The project's in the bag"
This lead me to being very open to a phone call from another company who also needed my particular set of skills, and being an in-house gig for a large corporate, I thought this would be ideal. Went to the interviews, got a good offer, accepted, jumped through about a week's worth of HR hoops, and finally started work. On day one, HR directed me to my boss, and she was surprised at my arrival. Turns out, they were never informed that I had accepted the offer and was starting on this particular day. So a couple of days without a laptop, and then a couple of days to get everything installed and sorted.
The WTFs didn't stop there, but these were two events last year which seriously made me question some of my choices in hindsight...
-
Vendor's Code...
Digging through some nasty inherited code, I come across numerous instances of WTF.
And not WTF because the business processes are WTF, but because it seems like the vendor tried to choose the most complex route when addressing even the most simplest requirements.
I'll be posting some snippets here often, because there's no short supply of WTF here. But here's the line of code that inspired me to start the topic.
string query = string.Format("%{0}%", string.Empty))
It doesn't get modified elsewhere, and is used in a where clause. But then, why bother having the clause?!
I'm just going to fix this silently, but this is just the kind of code that makes me weary of this profession and life in general...
-
RE: Joberate - does your boss know you're looking for another job?
@cheong said in Joberate - does your boss know you're looking for another job?:
People keep saying they'll be leaving will not get a pay raise
You hit the nail on the head. All of the instances I've seen where people openly say they're going to leave, they rarely end up leaving. Worse, they don't get good increases, and they end up being unhappy all over again.
-
RE: [B][O][G][G]le
Wordle 606 3/6
⬛⬛🟨⬛⬛
⬛🟩🟩⬛🟨
🟩🟩🟩🟩🟩Daily Duotrigordle #350
Guesses: 35/37
3️⃣2️⃣ 0️⃣8️⃣ 2️⃣7️⃣ 3️⃣3️⃣
0️⃣1️⃣ 3️⃣4️⃣ 2️⃣8️⃣ 0️⃣7️⃣
2️⃣0️⃣ 2️⃣2️⃣ 0️⃣2️⃣ 1️⃣7️⃣
0️⃣9️⃣ 0️⃣5️⃣ 2️⃣1️⃣ 1️⃣2️⃣
1️⃣3️⃣ 1️⃣8️⃣ 0️⃣6️⃣ 1️⃣4️⃣
3️⃣1️⃣ 1️⃣9️⃣ 2️⃣9️⃣ 3️⃣0️⃣
2️⃣4️⃣ 3️⃣5️⃣ 1️⃣0️⃣ 2️⃣5️⃣
1️⃣5️⃣ 2️⃣3️⃣ 2️⃣6️⃣ 0️⃣4️⃣
What a pleasant surprise it was when my starting guess was one of the words in the puzzle today
-
RE: ... because file handling is so yawn
Is this a one-off import utility? Whatever.
In my experience, it's never a once-off utility. It usually starts with that intent, and even "I'll clean it and make it better so that I can reuse it later". But that never happens. And you end up reusing it often enough to lament not fixing it, but not often enough to justify the time to fix it up.
That's what's happening with another one of our supposedly last contact import runs today...
-
RE: Vendor's Code...
What does something like "% %" would do to the results of a query?
That would yield results where the field has a space anywhere in the value.
Further digging reveals that the intent was more or less like a Is Not Null clause. But remember, these people don't ever do anything in a simple manner.
-
You keep using that word...<rant>posted in General
Does anyone else notice when people some words / phrases when it just doesn't apply to the sentence / conversation? I'm not even talking about buzzwords (which are a in their own right), but common things... I'll start with my pet peeve example...
"Obviously"
People have practically replaced the misuse of "literally" with "obviously". I work with a couple of devs / PMs / sales people, and most of them drop the word "obviously" when trying to describe something that's less than obvious.
If it were obvious, then there's no need to explain the concept. Or is it just to make the listener seem dumb and the speaker seem intelligent?
</rant>What else do you guys / gals / people encounter in this topic? I don't use "obviously", but maybe you can point out others which I would notice in my own way of speaking
-
RE: Thoughts on why so much .NET code is just awful...
@dkf said in Thoughts on why so much .NET code is just awful...:
It's popular, therefore it attracts those developers who don't care to actually do good work and who are looking for magic bullets.
One could say this about almost any new JavaScript framework or even Python
@dkf said in Thoughts on why so much .NET code is just awful...:
it's not the tool that's the problem, but rather the tools that use the tool.
QFT
-
RE: 🐝 The synergistic thread of data-driven agile community-based buzzwords leveraged to present a business and personal advantage
Sitting in a meeting with our account manager and the client discussing a data import, the account manager actually consistently referred to the data for import as "the Updata".
-
RE: Pretty Aggressive Code
Except they fixed it by prepending shit to a GUID, which makes it a varchar of some sort, which would break the SSIS package as well. So I doubt that is the issue...
And herein lies the bedrock of my WTF post. So even if we can't increase the number of columns, we end up changing the meaning of others, and changing their data type as well.
Oh, and yes, this is SSIS. Sure, SSIS falls over if you change the schema. This was confirmed by my buddy at the office, since my SSIS experience is limited.
So instead of only refreshing the schema to use a new column (which they would need to do anyway if you change a UniqueIdentifier to VarChar), they now have to add some work to break the ClientType-ClientGuid hybrid apart. Very unnecessary IMO...
And this is brand spanking new stuff, so the other WTF is why they could not just change it to accommodate their request to receive more columns...
-
RE: Discussions with your boss
Recently, I've had reasonable line managers that understand the intricacies of estimating these kinds of things. What really grinded my gears was how the Sales Managers would try to tweak the questions for your estimates to lower the time
spentquoted to the client.Sales Manager: How long will it take?
Me: 2 months. Planning, build, testing, deployments, the works.
Sales Manager: And just build, how long will that take?
Me: A month.Then sales manager turns around and promises the client a production deployment within a month of go-ahead
-
RE: What the forward?
@Benjamin-Hall Every so often I am reminded that I live in naive-ville, and I forget about the fact that people aren't always neutral / good. Sometimes there are bad actors
-
RE: Is DevOps also a manifestation of white male privilege?
@hardwaregeek said in Is DevOps also a manifestation of white male privilege?:
This, of course, is not unique to agile, or even tech
True, but it does demonstrate how PHBs think that Agile's "quick & continuous delivery" means that they can pull a date out of the air and expect it to be done perfectly. Brilliant, isn't it?
-
RE: When Toddlers Program
This reminds me of the kind of stuff I inherited from the vendor. Their insistence on using StyleCop has led to people adding the bare minimum in comments just to silence the product.
And man, do I hate it when a comment is literally the pseudo-code version of the following line. Rather tell me why you had to write code in this particular way, or that something needs to be considered before changing the method.
-
RE: The basics
@lucas1 said in The basics:
He didn't understand the very basics (block vs inline), the box model or what HTML elements he should use where.
The guy is a junior so I don't expect him to do know everything. But I expect people to know the basics.
You'd be surprised how many people are content with "just getting by". In my opinion, that is not the same as "knowing the basics".
I know I was surprised when I first learned that little nugget of professional wisdom. I got into this career because I also enjoy learning about new things (tech / code / in general). Others couldn't be bothered by anything outside the realm of what they need to know right now.
-
RE: [B][O][G][G]le
Wordle 598 3/6
⬛🟨🟨⬛⬛
🟨🟨🟨⬛🟩
🟩🟩🟩🟩🟩Daily Duotrigordle #342
Guesses: X/37
2️⃣7️⃣ 3️⃣1️⃣ 2️⃣8️⃣ 1️⃣2️⃣
3️⃣7️⃣ 1️⃣4️⃣ 3️⃣0️⃣ 1️⃣6️⃣
0️⃣8️⃣ 2️⃣2️⃣ 2️⃣3️⃣ 0️⃣2️⃣
0️⃣4️⃣ 🟥🟥 🟥🟥 2️⃣5️⃣
3️⃣2️⃣ 1️⃣0️⃣ 1️⃣7️⃣ 1️⃣1️⃣
2️⃣1️⃣ 3️⃣4️⃣ 3️⃣5️⃣ 🟥🟥
2️⃣4️⃣ 0️⃣7️⃣ 2️⃣0️⃣ 2️⃣9️⃣
3️⃣3️⃣ 1️⃣5️⃣ 3️⃣6️⃣ 1️⃣9️⃣
Thanks to the advance by @Zecc and @cheong I feel like I did much better today (even though the score is the same as yesterday). Being able to see more of the boards at a time was a game changer for me
-
RE: Vendor's Code...
Here's another little anti-pattern I've noticed. They must have adopted some kind of reverse paid-by-the-line strategy, because some of the code stretches horizontally to two or three times the width of my screen (at a resolution of 1600x900).
No it's not minified, single line stuff. It's stuff like this (from a proper .cs file):
if (request.parameters.ContainsKey("recordid")) { if (Guid.TryParse((string)request.parameters["recordid"], out id)) { recordId = id; } }
It's like they actively like to make code hard to read, since this pattern extends to Linq queries as well...
-
RE: [B][O][G][G]le
@Zecc Now this just changed the game for me. Even on the results page I can already see a huge difference. Thanks for the tip
-
RE: Windows 10 Fail Craters Update
Haven't had any of these issues, updated my computer last week...
Have to say, though, that I find the new sharing mechanism (the one that looks a lot like iOS sharing ) and Continue on PC impressed me most in my day to day. Now I just wish my company would update the firm's OS image to this version