It doesn't feel like it's enterprise enough to be realistic.
class TwoBaconRashersInsideTwoSlicesOfBreadFactory {
/* Make a sandwich
* <p>
* Construct a foodstuff consisting of two slices
* of bread with two slices of bacon.
* @return TwoBaconRashersInsideTwoSlicesOfBread a sandwich
*/
Public TwoBaconRashersInsideTwoSlicesOfBread getSandwich () {
BaconRasherFactory pig = new BaconRasherFactory();
BaconRasherInstance bacon1 = pig.getBaconRasher();
BaconRasherInstance bacon2 = pig.getBaconRasher();
SliceOfBreadFactory loaf = new SliceOfBreadFactory();
SliceOfBread bread1 = loaf.getSliceOfBread();
SliceOfBread bread2 = loaf.getSliceOfBread();
return new TwoBaconRashersInsideTwoSlicesOfBread(bread1, bacon1, bacon2, bread2);
}
Or something... trying to do Enterprise Java is hard.
Not enterprise enough, it doesn't implement any interfaces nor extends any generic classes, there also should be some try/catch blocks (what if the bacon isn't fried enough?) and of course several unit tests to guarantee the highest quality sandwich ;)
Language bashing is what characterizes our industry.
I have the dream that one day we will recognize languages as the tool they are and be mature enough to chose tools by utility and not by hype, hipness or pop culture and see there benefits and limitations.
I have the dream that one day we will recognize languages as the tool they are
We do. They're just terrible tools. Do you think other industries don't criticize their tools? Hell, they have full magazines and reports reviewing and grading them.
The idea that all languages/tools are created equal and just have different use cases is nonsense.
Criticizing tools is excellent. Deciding about their benefits and limitations, learning about when to use them and when not to use them. Sharing experiences so people can make better choices.
Criticism in this way is rare though. Bashing a language to be cool, be part of the hip crowd, make you feel better about your own choices, bashing languages for karma or laughs, bashing languages you have no experience in comparing it with a language you've used for some weeks is not criticism.
Does it help others? If it does, it is criticism. If it doesn't and only makes you feel good after posting, it's not.
[Edit] And the really sad part is that people make language arguments into people arguments, stereotyping people to make themselves feel better.
"Learning never to use them is just as legitimate."
Indeed! I would from my experience not use Z80 assembler - though I like it much more than 6502 - and CP/M as an OS for a social media website.
I have the gut feeling though that your comment might be about Java, which might not be warranted. The last company I've worked for makes >$200M in profit a year and will be sold soon for >$1b - based on a Java platform. The next company I worked for was skyrocketing and sold for $200M - based on a Java platform. Both profited from good performance, stability and GC maturity during high periods of growth and load and a good pool of developers during peak hiring times.
But then we might differ in our goals and evaluation criteria, mine is about getting things done to support a business in a sustainable way.
He is not bashing Java per SE but a special kind of Java: Enterprise Java and IMO that deserves a bashing on general principle. Enterprise Java just never seems appropriate.
I don't know if that pun was intentional, but if it was it's absolutely fantastic.
So as to remain on topic: I agree with you but the other side of the coin is that Java the language can't seem to live down Java EE and its culture. It's trying, though. I give particular kudos to the Clojure and Scala communities for helping to rebrand the JVM as something awesome independent of Java. That helped me, at least, to realize that I shouldn't conflate the two in my head.
The only stumbling block I have to get around in my head now when I think JVM is "JVM == long startup times", which is still kinda true but nowhere near as bad as it was.
He was bashing a programming language - you call it Enterprise Java - for laughs and karma, not seeing languages as tools you can use based on your judgement. I hope we once will grow beyond bashing.
[Edit] And this is the highest voted comment on a thread about how cool GTA V is to include programming references and how deep their open world is.
I'm probably young enough to have experienced Enterprise PHP, which by all accounts (at least when Symfony2 was just released) seemed like the love-child of Enterprise C++ and Enterprise Java.
And a hilariously detailed start-up with a (Dropbox inspired?) play room. There's also a hacker character whose convincingly detailed computer setup shows several VIM sessions (one on a portrait oriented monitor).
Shows how I shouldn't just depend on google to solve my problems for me. I searched for something like "turn off preview" but I never made the connection that it was called minimap. It's only slightly annoying. Thanks!
I'm surprised you don't have make installed. That's usually one of the first tools I install on any new system (if it's not included as part of the base install, like Arch does):
sudo apt-get install build-essential
Incidentally, the make error you'd get is amusing:
That's why you have another line saying something like:
cat Makefile
before blindly executing it. In general, you shouldn't blindly believe downloaded code, but in this case Makefile is simple enough that you can prove it's non harmful in a few second glance.
Never mind that the function casts (coerces? constructs?) ints to bread and ints to bacon. Let alone how it's got a special "plus" operator that can work on bread/bacon and return a sandwich...
If you're a developer and haven't played this game yet, I wholly encourage you to do so, just to witness the technical feat that this game is. There is a simply baffling level of detail and surely one of the most sophisticated open world engines ever conceived under the hood. It is stunning what the rockstar devs have pulled off here.
Either it was Lester's house computer or one of the Lifeinvader computers, but it was using a text editor that looked strikingly similar to Sublime Text. I had to do a double take.
The whiteboards in one of the Lifeinvader rooms, gave me a chuckle. It read, "Remember! We aren't ripping them off if they don't read the T&C" with word privacy crossed out.
There's also a mission where you go to "LifeInvader" headquarters and kill a character who looks decidedly like Zuck. LifeInvader has many details that make it a great parody of a SV tech company (and the logo even uses the FB font).
I would just name it Java.update() and leave it there. These people are trying too hard. They probably turn off the average geeks (who find it too geeky); and the hard-core geeks just tear them apart with all of the semantic and syntactic errors.
In the context of a video game the scene has a very different effect than in the context of a movie. The game forces you to graphically torture an innocent man. Because you are selecting which torture methods to use, the player is personally implicated in the torture. I found the scene to be far more emotionally impactful than if I had watched the same scene played out in a movie. It's brutal more for how it makes you feel than for what it depicts.
I'm sure it says something about me when I read the title and assumed that GTA stood for Greater Toronto Area. But I was having trouble figuring out what the 'V' stood for.
Now I'm hoping that someone will start up a coffee shop with this name.