General statistics
List of Youtube channels
Youtube commenter search
Distinguished comments
About
Continuous Delivery
comments
Comments by "" (@adambickford8720) on "Continuous Delivery" channel.
Previous
2
Next
...
All
Context is king. Even everything dave is suggesting is a bad choice if the app is being maintained by nothing but junior devs (yes, this happens). They won't understand the tradeoffs and unknowingly compromise the design, losing all of the advantages while keeping the disadvantages and compounding them. A 'VB' solution might actually be the right call.
2
@ContinuousDelivery I mean with little to no mentoring. The senior devs were "too busy" on "more important" projects. Yes, this happens. I've seen jr devs handed a 'simple' java MVC rich client w/o understanding OO. The first thing they did was start making things static to "gain access" as DI was 'too complicated and overkill'. That's far worse to me than just having it be either case consistently. I'd rather maintain a VB app clearly written by juniors than cargo culting juniors gone wrong, even if it "shouldn't have".
2
"Done right" or "Done right now"? Your boss will choose the former and be promoted before the later needs to be paid back.
2
How do you replay events through an evolving system? For example, some subset of messages are processed by api v1, others by v2, etc. How do you handle the bookkeeping to 'recreate' reality? Is there a system that tracks this kind of meta data?
2
@stephendgreen1502 correct, there are definitely 'cross cutting' concerns that don't work in full autonomy. Security is one of the cases. There are others. For example, you likely should all be using some kind of standard for tracing/logging or trying to troubleshoot a request across services will be near impossible. If you have many disparate systems to monitor app health, that can be an issue too. this is usually where some kind of 'platform engineering' comes into play. the systems have to be coupled to work, the challenge is doing the minimal amount.
2
The best part about OOP is no matter what the code is, you can say it isn't 'real' OOP.
2
@andsnpl Yes. I was told by our director explicitly: "Stop w/the science project and ship some damn code. I'd rather have a broken app than an incomplete one". I'm guessing its easier to throw the devs under the bus for low quality where incomplete is seen as mismanaged. Bad leadership is often bad in every respect. The best part is we're replacing an app widely considered unmaintainable, which also has no tests!
2
@andrealaforgia Call it what you will, but most contracts define what should be implemented, by when and with a known budget. In fact, they usually spell out exactly what happens when those things don't happen. Waterfall may not be the answer in this very common case, but agile definitely isn't either.
2
Any place that has a lot of 'rock stars' is almost certainly dysfunctional.
2
I use intellij because I don't want to manage a bunch of plugins. VS Code is definitely improving faster though, so I'll likely switch at some point.
2
The problem space largely drives the 'shape' of the solution. Some solutions are easier to express in one language vs another. That metric is super flawed to me. Different languages have pros/cons depending on the problem we're solving. This 'function point metric' problem is a contrived problem space that's just not useful. Lets see how long it takes to create the N 'function points' required for, say, a distributed cache. Are you really going to do that in VB? Why not? I mean golly, it's #4!
2
FP feels leaner to me, you don't need a GoF book just to do basic things in a 'good' way. You don't spend hours trying to shoehorn a non-oo concept into some object, arguing about how "Manager" classes are a code smell or getters are evil. The basic building blocks of FP seem harder to get at first, but i find the aggregate result to be more flexible and easier to understand.
2
GTFO low code folks, it's the 'this is the year of desktop linux' crowds turn!
2
Then you should be using waterfall, not agile. When they have to accept that no changes can be made to the plan without invalidating it, they'll quicky decide its the even worse approach.
2
Complete horseshit. The entire POINT of abstraction is to reuse solutions to solve even bigger problems. You can write a useful full stack app while being blissfully unaware of the OSI model OR pointers.
2
Its really the link from AI to robotics that's the issue. If AI had a will it couldn't really act on besides twiddling some bits it could be devastating, but not existential.
2
@ainocorry3004 and this is why retros are a waste of time. "hey, we want the cameras off" "i don't prefer it and in another context, you'd have no choice, so too bad" "umm, ok, lets spend the next half hour talking about what we 'want to change' i guess"
2
I'm still cringing from that
2
The Java ecosystem is more important than java or the jvm, especially given docker.
2
It actually works fairly well if you are very diligent about IaC and test data generation, but if you aren't at near 100% automation, you're gonna have a bad time. In fact, our issue is it's so easy people spin up entire environments to test simple things, which is expensive unless everything is serverless. I think you are way underselling the effort to mock N apis for 'isolated' testing as well as ignoring what it DOESN'T test. You really want to test the 'glue' as well as the 'components' which mocking doesn't really achieve. When you have IaC mastered you can do things like bring up an environment that is dedicated to doing some long running 'nightly' job that requires several async components chatting through multiple pieces of infra (rest calls, MQs, api gateway, etc). It's hard to be overly confident mocking something like that.
2
I just can't imagine writing javascript when TypeScript is a thing. Understanding static types and generics is a pretty low bar for a dev.
2
I think it's when you really start considering the extended costs and roi on every 'major' decision: dev time, infra, long term support, compounding returns, optics etc
2
Have a relatively flat org, flexible deadlines/scope and empowered devs? Agile is a wonderful fit. I can also advise you on how to feed and care for your unicorn.
2
@georgehelyar Thats my point. You can't use agile in a waterfall business model, but I have yet to see a project where the ship date was decided on project state. Yet every single project was ostensibly 'agile'.
1
@georgehelyar I've done it all including offering sass for software that wasn't written with that in mind. Overpromising service features is indiscernible from overpromising product features.
1
@philthompson2239 Who said more code? It'll just take more iterations to reach an acceptable solution that doesn't require a savant to maintain. Given you missed the entire point your self compliment of 'as the smart one' is pretty suspect.
1
@philthompson2239 I did not, they are all relative values meant to illustrate the power and value of fast iteration and short feedback loops. We might be duking it out for the bottom 2 producers in the org, only one is half the value of the other. It's not the flexing contest you seem bent on winning. The entire point is no matter your ability level the ability to iterate quickly will lead you to better designs and higher productivity. It can actually be a great asset to the less innately gifted and of enormous value in large teams of disparate abilities. I can't make you smarter but I can make you more efficient. I refuse to believe you're unaware of your aggressive tone. I hope you feel as foolish as you look trying to 'take the high road' now.
1
I bet those grapes were sour anyway.
1
You're conflating immutable with effectively immutable. If a bit of object creation is genuinely impacting your performance (it almost certainly isn't), you can use persistent data structures.
1
Gotta call bullshit on the culture being a result of the methodology. If my company found a way to increase productivity by 100% they'd cut deadlines in half AND increase scope by ~20-30%. If we aren't on the cusp of failing, we're being lazy.
1
I suspect the "schmoozing" aspect is disproportionately weighted when getting stats from faang companies.
1
I try to think of a few edge cases, even if it's just to define what happens. For example, what happens when the sum is larger than your return type can express? Does it (need to) work with negative numbers?
1
Usually that's where some kind of standard comes in. For example, all services will have to support the same JWT IDP (or something federated) to authenticate so each service can handle authorization.
1
@stephendgreen1502 autonomous doesn't mean anarchy. You're still obligated to support the apis you publish. That why companies agree on standards as the lowest common denominator. If you agree on open api, it doesn't matter what language or framework you use, but yes, you need to support open api. Its no different than supporting HTTP.
1
@ Polymorphism and abstraction are NOT not an OOP thing. Almost every language has those things. The only thing unique to OOP is inheritance.
1
It helps me manage tech debt when the reality of deadlines loom. If I see an implementation that could be better (internal coupling, some poor algorithm/data structure) i can let it slide knowing reimplementing it is relatively low risk.
1
IME devs are pretty convinced TDD works. It's the mangers that are penny wise and pound foolish about it.
1
As an interviewer, differentiate yourself and try to leave me feeling excited. Convince me I want to work w/you by saying something funny/insightful/etc. Show me some enthusiasm and engagement! Rant about the design of the java collections API, the ivory towerness of HATEOS, anything! This isn't a mid-term you're trying not to fail, this is your time to convince me you're a peer. I have a dozen more candidates w/the same alphabet soup of 'qualifications' as you; you will struggle trying to "out tech" them. After a certain minimum level it's the intangibles that matter.
1
@ At times, yes, but many times, it clearly does not. A lot of times it's just work. Someone has to write the rest endpoint and some queries. Having to come to a consensus about doing the DB vs controller first, etc, is not adding value in understanding. It's just a workflow preference. But now its a problem we have to solve just to move forward with the 'obvious' task.
1
The problem is that you can miss entire paradigm shifts because you don't want to learn the current 'fad'. Reskilling from near ground 0 vs absorbing along the way can create a self-perpetuating obsolescence cycle. Take java 8; that's not just an api, it's a fundamental shift in thinking. I've interviewed folks who clearly haven't learned much after java 5 and they are basically useless now. The trick is cherry picking things that will be helpful in the future, which is largely unknowable.
1
A lot of it is in the jdk now
1
@ErazerPT That's the hype. In practice, not so much.
1
Agile will not get you more lines of code out that door than waterfall, it will get the RIGHT lines of code out the door and start getting an roi sooner. If you need predictability, which most business contracts are written around, waterfall is likely the right answer.
1
@m13v2 I mean a culture that requires 'rock stars' because of the poor planning, lack of cross training/kt, broken team interactions, etc. You end up w/a handful of these guys making stuff work in an essentially ad-hoc manner, which perpetuates the situation.
1
@_Mentat What does your bad company have to do w/the merits of agile?
1
I can solve your business problem no matter what it is. I'll copy/paste all of stack overflow if I have to!
1
Stupid reflection tricks and monkey patching, here i come!
1
Java the language? Sure. Vs other JVM languages it gets a lot less clear.
1
@christianibendorf9086 Deleting a vertical slice of a monolith is the same exact thing
1
@christianibendorf9086 Then you're doing it wrong.
1
Previous
2
Next
...
All