108 karma · joined September 1, 2015
Skill in software engineering can't just be measured by skill at writing the language, and this is trending forward faster and faster. The really accomplished engineer is one who has experienced many teams, many managers, many processes, and many deployments.
The accomplished engineer is opinionated about testing methods and about code readability, because he has suffered under many misconceptions about these things and taken the time to consider the alternatives.
You can just say "they had proven the idea". Adding "out" to verbs is very fashionable but unnecessary.
Winer part in the XML-RPC and SOAP outcomes was a source of misery for developers in the early part of this century. MORE was neat because it had a place on the Macintosh System 6 platform, when there was literally nothing else of its kind. What did MORE evolve into later? Nothing.
Winer has long been an advocate of "the semantic Web", which is a user-focused idea of what's essentially an engineering problem. The semantic Web was/is a dead-end and in its time it led to a great many stupid uses of HTTP.
Winer can be celebrated as an advocate for users but not as a great engineer.
edit: Lemire is showing a lack of what Fowler describes as "mechanical sympathy".
https://martinfowler.com/articles/lmax.html#QueuesAndTheirLa...
Java NIO channel should have been used for this. It was demonstrated back in the early 2000s with the "Grand Canyon" demo achieving very good throughput for its time, and it's still the gold standard.
And in extreme cases it is catastrophic.
I never considered permadeath an important part of Angband or any other roguelike because I always scummed.
Managers have to devote a certain amount of time to understanding you and your influence on the process and your mental state.
Managers have to have influence with other people. They build relationships and they form a big picture about the work being done and the timelines imposed and the human assets they have to motivate to meet the important goals imposed by the business.
You've heard all this before but it's a very squishy job. There is no template for it. Management is very, very difficult to do.
https://www.amazon.com/Draw-Animals-Perigee-Jack-Hamm/dp/039...
I work with Java 8 on a greenfield high-frequency transaction platform for a very large company. It is extremely satisfying to build the "world's largest" of something, and no amount of shiny features in a cute new language would deter me from this work.
That's not a compelling argument for showing that you understand the difference between the pump station and the treatment center.
Changing the metaphor: in your domain you have local advantages, using your scripting language or Go or what have you. At the treatment center we apply force multipliers at scale. A good example is the actor system, where threads are tamed and bound to cores, and application logic flourishes through work messages and not direct execution.
Asynchronicity, no blocking, and volumetric instrumentation are the force multipliers. On the margin you will complain that it is all too complicated, and with good reason.
You're just manning one pump station.
Moore's Law has been dead for 15 year perhaps, and the pump stations will endure as utilities. Data on the edge will endure forever, because locality is a thing, but computing on the edge is wispy and questionable.
If privacy becomes a thing, will data move to the edges or to the center? If data consistency becomes a thing, if data transformations become a thing with a move to single-payer insurance in the US, will data move to the edges or to the center?
I see no scenarios, except network performance hits a wall, where we are preserving the sensibilities of scripters and writing software that is beautifully single-threaded and synchronous. It is a pipe dream to think that your execution stacks will be anything but tiny 10 years from now.
Hammer and hew your sewer pipes, and keep them "clean" in the way that you have been taught. Times will change and you will not be notified of the event.
I hope you realize you are in danger of becoming Trump's "forgotten man" alongside coal miners and Carrier manufacturing line workers.
Or maybe you just enjoy being on the margin, which is fine.
Either way, hating railroads and sewer pipes and comptrollers is sort of pointless.
Finally: Every context is bounded but not every engineer is working in just one context. It takes roughly 3 decades for a dedicated engineer to reach, but infinite context is possible.
Yes. Have you ever looked under the covers of an RDBMS, or your local libc? Platform code is never "clean", but application code should be.
> That you usually generate a project that is full of auto generated files says something about Spring.
The fresh projects I've been making are typically just a pom.xml. What are you talking about here?
Wishing Java would pass away is like wishing the government would stop building roads and taxing you for them.
You might not like building infrastructure, but you will continue to use it. If this describes you, you are a marginal developer.
The Java being written these days with Spring Boot is as clean and readable as most other stuff. To say things have improved just doesn't do things justice. Nothing has reduced the complexity of everything enterprise to a coherent model the way Java+Spring Boot has.
It's also worth noting that the JVM isn't just great because it lets you write in these other languages. It's great because you can write Java and still use Akka and Play! and anything else that runs in the JVM.
Software is a collaboration and I would submit that most engineers have accepted this for one reason or another. The outliers who maximize their own personal outcomes are useless.
How can a cyclist possibly ruin my commute, no matter how he rides? It is inconceivable to me that your delay at intersections is a reasonable complaint to make.
I was hauling ass down a one-way, two-lane street in the bike lane (shoulder). A woman in a sedan pulled in from a side street on the left, crossed into the right lane, then swerved across my lane to make a right turn into a shopping plaza.
I had no vector for escape, it was too sudden. I believed I would go through her right rear window and wind up in the car. Instead, the bicycle and I slammed laterally against her car and flew forward at her angle, my sternum striking her passenger-side mirror. As it happened, I thought it would kill me, but the mirror just exploded into a hundred pieces.
I landed on the ground with my bike next to her now-stopped vehicle, solar plexus aching but otherwise almost unharmed.
She was very apologetic. She said she had many friends who were cyclists, and she was aghast at the idea of hurting any of them. She told me if I was unhurt, and agreed not to request the police, she would happily absorb the damage to her vehicle (it was really badly damaged by my bike scraping over 4 feet of her paint).
After I caught my breath and realized I was unharmed, I told her it was a fair cop and we were good. But I will definitely never forget the terror I felt as I slammed into her.
If you can't describe how that model makes its way into a product and is consumed, then you aren't a pro, the end.
From the product's perspective, all you produce is a configuration file.
This is a perfect example of what's perplexing me about the "learning" industry.
https://i.redd.it/00824ycw3hwy.jpg
That code also uses pickle to serialize to disk, which is a gross, irritating pattern I've seen from Pythonistas: just pickle it to disk, it works on my laptop.
Seems like Logo programming, to me.
This layman likes to refer to something about genetic algorithms and magnetic flux for reference on this.
I mean this: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.50....
When I get to work in the morning I just expect that I'll be rebooting this PoS as soon as I open it.
Of course he did. The idea of making money by manipulating governments takes money to begin with. He thought it through.
The real question is, what are we going to do with all these useless people who want to manipulate currency markets for individual gain?
But the truth is that organizations fail more often because of their passive, "why won't anyone lead me properly" attitudes. And this smacks of it.