Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
GenJoe
Sep 15, 2010


Rehabilitated?


That's just a bullshit word.
i have been using intellij lately and it is pretty needs suiting

Adbot
ADBOT LOVES YOU

jony neuemonic
Nov 13, 2009

Sapozhnik posted:

afaik in c# land if you want to do a thing then you either use the microsoft library for doing said thing or do it yourself. and chances are the microsoft library is poo poo, because chances are any given library is poo poo. if you have an open source ecosystem though, the poo poo libraries die and the not-poo poo libraries thrive and then natural selection works its magic. stuck with only the microsoft libraries? your hosed.

my only real complaint about what i've seen of java's ecosystem is that a lot of things feel very uh, "enterprise" for lack of a better word. the path from "add to pom.xml" to "do something useful" isn't always super clear.

HoboMan
Nov 4, 2010

any time i needed a library in c# i just picked the clearly more popular one and it worked just fine

can't say the same for java

HoboMan
Nov 4, 2010

also in c# i have only ever needed a library like twice

can't say the same for java either where to make an API call and parse the result it takes 3 libraries. c# requires 0

hobbesmaster
Jan 28, 2008

even microsoft isn't strictly a windows shop anymore. most of their cloud stuff i've worked with is linux

Gazpacho
Jun 18, 2004

by Fluffdaddy
Slippery Tilde
at least C# has a supported UI framework

qhat
Jul 6, 2015


Program in C++ if you want a rock solid career

Notorious b.s.d.
Jan 25, 2003

by Reene

kloa posted:

but vsstudio isn’t garbage like eclipse :sigh:

HoboMan posted:

also in c# i have only ever needed a library like twice

can't say the same for java either where to make an API call and parse the result it takes 3 libraries. c# requires 0

sweating piddly rear end poo poo like this is how you end up being chronically underpaid and exclusively working for morons

stop being a loving nerd who cares about penny ante nonsense and go get yourself a job that pays better working with smarter people (i.e. learn java)

HoboMan
Nov 4, 2010

thinking java means working with less morons is the funniest thing ive ever heard

Valeyard
Mar 30, 2012


Grimey Drawer
java is the most common language used in my work

it also means it has the most lovely people working with it

Mahatma Goonsay
Jun 6, 2007
Yum
just had a phone screen that went ok i guess. mostly a web dev role, so rip me. the highlight was the interviewer complaining about static typing with flow/typescript

Valeyard
Mar 30, 2012


Grimey Drawer
the best thing is people working on our Python code that came straight from java projects, and just write fucing garbage Python code in a Java style

DaTroof
Nov 16, 2000

CC LIMERICK CONTEST GRAND CHAMPION
There once was a poster named Troof
Who was getting quite long in the toof
i spent 2+ years on a gargantuan eclipse rcp that encompassed three plugins and i forget how many different projects for releng, the update site, etc. ad nauseam

then we rewrote it as a vscode extension in like a week and abandoned the rcp almost immediately

since then the only time i've had to touch java is for android, and even then most of my newer projects use c#/xamarin

i don't miss java

Shaggar
Apr 26, 2006

Sapozhnik posted:

java is 80% the same thing as c# except that java has a standard build tool that isn't idiotic and a third party open source library ecosystem that actually exists. so you can pick up java very quickly, you'll spend more time learning the ecosystem than the language.

afaik in c# land if you want to do a thing then you either use the microsoft library for doing said thing or do it yourself. and chances are the microsoft library is poo poo, because chances are any given library is poo poo. if you have an open source ecosystem though, the poo poo libraries die and the not-poo poo libraries thrive and then natural selection works its magic. stuck with only the microsoft libraries? your hosed.

also there's various jvm langs out there that interop nicely with java. scala, kotlin, clojure are the big ones.

java 8 added something like linq, java 9 added something like assemblies except it's a massively disruptive change so nobody is really using them yet. bytes are signed in java but everything else is strictly better than its c# equivalent, at least it was back when i last dealt with c# in like v3 or something.

maven is really the only thing java has over c# these days.

jony neuemonic
Nov 13, 2009

tbh i'm still happy i learned c# because it let me pick up unity real fast.

Sapozhnik
Jan 2, 2005

Nap Ghost
yeah if you switch from swt to something designed more recently than 20 years ago then you're going to have an easier time of it

in other news qt 5 is a lot easier to program for than motif

that's not a reflection upon the language one way or the other

Gazpacho
Jun 18, 2004

by Fluffdaddy
Slippery Tilde

Notorious b.s.d. posted:

stop yearning for some mythic greener pasture and become good at your job

every job involves a whole lot of legacy horseshit. that's the job. if you don't like it, well, i'm sorry you dingus why did you become a software developer
agreed OP, immerse yourself in the shittiest legacy systems you can find. learn from the worst

qhat
Jul 6, 2015


If it wasn't for legacy code that needs to be decommissioned ASAP, I would never have had a job.

Gazpacho
Jun 18, 2004

by Fluffdaddy
Slippery Tilde
for real though i've seen the worst legacy disasterpieces when inexperienced noobs come in after a determined idiot who has eradicated every trace of good sense

Gazpacho
Jun 18, 2004

by Fluffdaddy
Slippery Tilde

qhat posted:

If it wasn't for legacy code that needs to be decommissioned ASAP, I would never have had a job.
"decommissioned" ... what you mean like a system works, but you replace it ?????

qhat
Jul 6, 2015


Gazpacho posted:

"decommissioned" ... what you mean like a system works, but you replace it ?????

Code that is no longer fit for current purposes.

Arcsech
Aug 5, 2008

Notorious b.s.d. posted:

stop yearning for some mythic greener pasture and become good at your job

every job involves a whole lot of legacy horseshit. that's the job. if you don't like it, well, i'm sorry you dingus why did you become a software developer

tbh I vastly prefer my horseshit java hellhole to the horseshit js hellhole I touched briefly a while back, and ruby is just incomprehensible to me

sure there’s horseshit everywhere but getting away from plangs is a valid goal

FamDav
Mar 29, 2008
lol if you define your job prospects by a specific language

but if you are pick English and java

jony neuemonic
Nov 13, 2009

Arcsech posted:

tbh I vastly prefer my horseshit java hellhole to the horseshit js hellhole I touched briefly a while back, and ruby is just incomprehensible to me

sure there’s horseshit everywhere but getting away from plangs is a valid goal

java and c# legacy horseshit does have the advantage of still being mostly debuggable.

Arcsech
Aug 5, 2008

FamDav posted:

lol if you define your job prospects by a specific language

but if you are pick English and java

agreed. I’m not too picky about language but having like

a type system and a good ide

makes life so, so much better that i would have to think really hard about taking a job in a language that doesn’t have both of those things

(exception: Erlang/Elixir, because OTP and the BEAM are super great and make up for a lot)

Sapozhnik
Jan 2, 2005

Nap Ghost
there is zero difference between good and bad things. you imbecile. you loving moron.

Gazpacho
Jun 18, 2004

by Fluffdaddy
Slippery Tilde
more features in a platform just means more ways to fail

qhat
Jul 6, 2015


The great thing about c++ is it has both great things and a great ide (Linux)

Analytic Engine
May 18, 2009

not the analytical engine
What are the advantages to selling yourself as a Generalist Programmer? Most of my success in getting hired and changing jobs seems to be because I wanted to (and did) specialize years ago. Honestly asking this question since most of my friends & colleagues are Generalists

qhat
Jul 6, 2015


If you are a legit generalist programmer then you should be being paid six figures irregardless of where you live.

Blinkz0rz
May 27, 2001

MY CONTEMPT FOR MY OWN EMPLOYEES IS ONLY MATCHED BY MY LOVE FOR TOM BRADY'S SWEATY MAGA BALLS

FamDav posted:

lol if you define your job prospects by a specific language

Notorious b.s.d.
Jan 25, 2003

by Reene

Analytic Engine posted:

What are the advantages to selling yourself as a Generalist Programmer? Most of my success in getting hired and changing jobs seems to be because I wanted to (and did) specialize years ago. Honestly asking this question since most of my friends & colleagues are Generalists

specialization is where the money is

i have no idea what a "generalist" is. someone who is always earning entry level wages?

Notorious b.s.d.
Jan 25, 2003

by Reene

HoboMan posted:

thinking java means working with less morons is the funniest thing ive ever heard

yeah this is a thing a windows guy would say

PIZZA.BAT
Nov 12, 2016


:cheers:


Notorious b.s.d. posted:

specialization is where the money is

i mean i understand newbies' fear of specialization and i was scared of it too at one point. you're essentially putting all your eggs in one basket and if that tech becomes obsolete or crashes then it's back to square one again.

the thing is if you remain a 'generalist' then you're basically always at or just one step ahead of square one so- why not specialize?

PokeJoe
Aug 24, 2004

hail cgatan


Java is pleasant enough for my day job. Not too many people try to get cute with it so our codebase is mostly acceptable to dick around in.

DaTroof
Nov 16, 2000

CC LIMERICK CONTEST GRAND CHAMPION
There once was a poster named Troof
Who was getting quite long in the toof

Notorious b.s.d. posted:

specialization is where the money is

i have no idea what a "generalist" is. someone who is always earning entry level wages?

in theory it's someone with enough experience to understand programming fundamentals and be familiar with a few different languages

in practice it's someone who's aware of the existence of "beginning python" and "javascript for dummies"

Notorious b.s.d.
Jan 25, 2003

by Reene

Rex-Goliath posted:

i mean i understand newbies' fear of specialization and i was scared of it too at one point. you're essentially putting all your eggs in one basket and if that tech becomes obsolete or crashes then it's back to square one again.

the thing is if you remain a 'generalist' then you're basically always at or just one step ahead of square one so- why not specialize?


DaTroof posted:

in theory it's someone with enough experience to understand programming fundamentals and be familiar with a few different languages

in practice it's someone who's aware of the existence of "beginning python" and "javascript for dummies"

nobody really cares about your technology specializations. knowing a programming language isn't worth anything because anyone can get up to speed in a few months. the money is in business and domain expertise

being an expert in python or whatever is worth nothing, zip, $0, unless you work for a python tools vendor. (because then python is the domain expertise)

being an expert in petrochemical engineering / ground imaging software who knows C++ is much more valuable than being an "expert in C++"

being an expert in financial trading platforms who knows java is much more valuable than being the guy who wrote the book on java testing etc

being an expert manager who develops talent effectively at a series of jobs is much more valuable (and much more transferrable!) than any technology skill

Notorious b.s.d. fucked around with this message at 16:39 on Mar 24, 2018

Notorious b.s.d.
Jan 25, 2003

by Reene
even if we want to talk about technology specialization it's going to be broader classes than a programming language or a specific framework

proven expertise in distributed systems
proven expertise in quality assurance and build management

blah blah blah

don't get hung up on whatever the idiot on the rails podcast told you last week -- he's an idiot who makes rails podcasts for gently caress's sake. no one has ever given a poo poo about the difference between "good" rails code and "bad" rails code. they just wanted a web app or an api or whatever, and the implementation details are meaningless bullshit for the nerd herd to argue about

MononcQc
May 29, 2007

An experienced generalist is not just someone who goes and knows the surface of a bunch of technologies, it's a person who knows a vastly satisfying amount about multiple techs.

A workplace should see their value. They are going to be those employees who can break the silos of various teams or specialities on a team, and can foresee issues in interactions with other components in an entire stack. There's nothing more easily preventable than a guru in fancy algorithms for rendering or physics simulation not having the breadth of experience required to write safe, performant SQL queries.

Your good generalists skip over the borders between circles of expertise in an organisation and carry valuable information and experience with them. A team that recognizes that and makes use of it will get much better results than one who builds disjoint circles around experienced experts who do not communicate enough or can't get a vision on a broader area than the one they are an expert in.

In a small business or agency, where the workload varies a lot over time depending on contracts, a good generalist is the last person fired (after the boss's family) because they can replace, at least for a while, most other employees in some area. The generalist is more easily replaceable by any expert in one single area of work, but can also offer the most bang for your buck when the job is not always being specialized. Knowing a bit of everything is worth more than a lot of a few things when the nature of your work is that you do a bit of everything!

Expertise does come with higher salaries, but a higher long-term risk. If you made your reputation in interactive games and sites by focusing a few years in Flash to the point of being an expert about it, and that that market dies with one iPhone release, you probably have to start from further back than a bunch of people who already knew far more varied pieces of tech and for whom their general experience can be reused better in new environments.

What I find happening is a kind of oscillation between generalisation and specialisation: try a lot of things, dig deeper in one you like, and once you're solid enough there, start looking a bit around again to prevent yourself from walling you in.

Notorious b.s.d. is kind of right in saying that domain expertise is what is really worth it, but I think it's a bit larger than that as well. Any cross-competencies can end up being real useful to people who need them. I'm an expert at Erlang and whatnot, but what makes me worth hiring the most is that I also ended up having decent competences in system design, training and teaching, documentation writing, and operations. There's one expertise where people find me, but it's the other things around that makes me better suited at say, building a team made out of people who never used functional programming before, than someone who only knows the tech stuff very well.

Adbot
ADBOT LOVES YOU

Pollyanna
Mar 5, 2005

Milk's on them.


There’s Always Money In The Rails Stand

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply