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.
 
  • Locked thread
FamDav
Mar 29, 2008
i just spent half an hour writing lovely database functions over std vectors in c++ and then another 20 minutes writing the first 7 questions out and debugging said lovely database functions.

anecdotally, i noticed two things

1) not using an ide for c++ really does suck because of how much code you have to write
2) converting between a collection<T> to a collection<R> still sucks
3) maps iterator returning a pair<const Key, Value> can cause issues if you want to pull map's value_type's out into a vector.
4) template error messages are still awful.

going to forget i did this in a few days and reattempt with clion. see if that helps.

Adbot
ADBOT LOVES YOU

theadder
Dec 30, 2011


i didnt do either of these things op

BONGHITZ
Jan 1, 1970

i too downloaded clion and have yet to use it

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY

syntaxrigger posted:

I've never read a book back to back on java. Last time I did work out of a java book was probably the java 6 deitel deitel book

Only good thing I can say about this experience is that it was kinda nice using java again.
so first off, qualify any advice you get in this thread with fact that different people learn in different ways. what im gonna recommend would work v well for me, but it might be useless misery for you.

anyway in my mind there're two aspects to learnin a language/library/api/we.
(1) learning what tools it gives you.
(2) learning how those tools interact.
so my usual approach is to sit down and read a big ole book on a language cover-to-cover, making notes on anything cool i come across. this helps w/ (1). then for (2) i write a small project of some sort in the language. this usually won't make use of even a fraction of what i learnt in (1), but it will correct many of the misunderstandings i've accumulated from, well, Learning Without Doing.

if this approach appeals to you, then a good book for the bits n pieces of java is Java In A Nutshell. if you're completely new to the OO paradigm, you might want something heavier, but in that case someone else is gonna have to give you a recommendation.

as for the project, welp, that one's entirely up to you.

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY
re: (1): you can definitely get by using tutorial and stackoverflow questions, as half the loving industry demonstrates. problem is that without the context a proper survey of your toolset gives you, you frequently get hosed by the X->Y problem, which is that you encounter problem X, but don't know a neat tool exists for solving X. so you kludge together a hack that turns problem X into problem Y, which you can solve.

and then somewhere down the line you realize your X->Y kludge is actually a piece of poo poo and you ask someone "uh how do i solve Y" and they go "why'd you wanna solve Y". when you answer "well i actually want to solve X, but i turned into Y", they laugh at you.

MeruFM
Jul 27, 2010
the issue with that is just the huge amount of possible known solutions to X for any language and one could not hope to grok it all from a single read of a single book.

still better than going in with a "how to learn in 24 hours" tutorial and stackoverflow in 30 tabs tho

Symbolic Butt
Mar 22, 2009

(_!_)
Buglord
I don't want to say that the tasks were easy but I just wanna point out that ML in general is waaaaaaaaaaay harder than just that.

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY

MeruFM posted:

the issue with that is just the huge amount of possible known solutions to X for any language and one could not hope to grok it all from a single read of a single book.

still better than going in with a "how to learn in 24 hours" tutorial and stackoverflow in 30 tabs tho
yeah reading a book or three doesn't make you immune to X->Y'ing, but ime it makes you vastly less susceptible to it. not so much because loads of Xs are covered in that one book, but because you've got much more context to use to search out a good solution

Dodoman
Feb 26, 2009



A moment of laxity
A lifetime of regret
Lipstick Apathy
what's ML? i want to say machine language but that doesn't seem to fit in this context. also im an idiot

i've failed java in uni twice now, half the reason being i didnt go to class and the other half being me loving retarded at moving data being classes. so yeah, dont be so hard on yourself.

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY

Symbolic Butt posted:

I don't want to say that the tasks were easy but I just wanna point out that ML in general is waaaaaaaaaaay harder than just that.
ehh. there are a much larger number of people who'll happily bang a SVM/k-means/whatever implementation against problems than the number of people who actually have a good grounding in the field. but the thing is that there is a much, much, much larger number of people who haven't touched a ML and are scared ever to, so it's not v hard to look like a 'ML person' in front of them

basically like stats has always been

saucepanman posted:

what's ML? i want to say machine language but that doesn't seem to fit in this context. also im an idiot

i've failed java in uni twice now, half the reason being i didnt go to class and the other half being me loving retarded at moving data being classes. so yeah, dont be so hard on yourself.
machine learning

MeruFM
Jul 27, 2010
ML is often used as a buzz word for anyone manipulating data that can't be stored in an excel file without crashing. See also: big data.

What I remember of ML is beysian statistics, clusters, markovs, vector machines, etc. So much mathy bullshit (not really bullshit, just hard for people without a good math foundation like me.)

I have yet to see any person outside of academia with a data scientist-like title use these techniques.

MeruFM
Jul 27, 2010
Most of the time, they're just programmers with an advanced degree and tableau experience.

Symbolic Butt
Mar 22, 2009

(_!_)
Buglord

coffeetable posted:

ehh. there are a much larger number of people who'll happily bang a SVM/k-means/whatever implementation against problems than the number of people who actually have a good grounding in the field. but the thing is that there is a much, much, much larger number of people who haven't touched a ML and are scared ever to, so it's not v hard to look like a 'ML person' in front of them

cool, what you're saying is adding to my confidence in the case I ever find a job opening involving ML. I'm totally an "ML person" because I worked through some courseras :cool:

btw syntaxrigger additionaly to reading a book you should look up those data science, machine learning online courses and try to work through them with java

Workaday Wizard
Oct 23, 2009

by Pragmatica
haha all this time i thought ML was referring to OCaml, SML, etc.

learn something everyday :)

BONGHITZ
Jan 1, 1970

saucepanman posted:

what's ML? i want to say machine language but that doesn't seem to fit in this context. also im an idiot

i've failed java in uni twice now, half the reason being i didnt go to class and the other half being me loving retarded at moving data being classes. so yeah, dont be so hard on yourself.

go 2 class

gonadic io
Feb 16, 2011

>>=

Shinku ABOOKEN posted:

haha all this time i thought ML was referring to OCaml, SML, etc.

learn something everyday :)

Same, I was about to knock up a haskell solution to those problems to demonstrate how difficult ocaml would be from java

kitten emergency
Jan 13, 2008

get meow this wack-ass crystal prison
thanks for the python posting tef

Ericadia
Oct 31, 2007

Not A Unicorn

BONGHITZ posted:

go 2 class

yeah this

karms
Jan 22, 2006

by Nyc_Tattoo
Yam Slacker

fart simpson posted:

actually that was a lie. i learned what monoids and functors are, because those are both really simple. then i read that monads are just monoids in the category of endofunctors and it was obvious

Notorious b.s.d.
Jan 25, 2003

by Reene

Symbolic Butt posted:

btw syntaxrigger additionaly to reading a book you should look up those data science, machine learning online courses and try to work through them with java

java has the ultimate library for this: apache mahout

mahout is not a focused or carefully designed library. it's just every drat ML algorithm in one giant grab bag.

sometimes that's ok

gonadic io
Feb 16, 2011

>>=

Notorious b.s.d. posted:

java has the ultimate library for this: apache mahout

mahout is not a focused or carefully designed library. it's just every drat ML algorithm in one giant grab bag.

sometimes that's ok

see also: scalaz

gonadic io
Feb 16, 2011

>>=
wait gently caress we're talking about Machine Learning still

Vincent K. McMahon
Sep 13, 2014

by Ralp
Looks like I might get to drop a class I had chosen to take next year, which means either goodbye functional programming class or goodbye...advanced networking. Im not 100% sure what I would I would get rid of

fritz
Jul 26, 2003

i feel bad about piling on syntaxrigger but data prep is critical for any kind of ml and that assignment looked exactly like the sort of things you do on first passes thru the data to get a feel for it

but dang i wouldnt do it in java

Dodoman
Feb 26, 2009



A moment of laxity
A lifetime of regret
Lipstick Apathy
networking is a nightmare

functional programming might be a little better?

Ericadia
Oct 31, 2007

Not A Unicorn

Symbolic Butt posted:

cool, what you're saying is adding to my confidence in the case I ever find a job opening involving ML. I'm totally an "ML person" because I worked through some courseras :cool:

drat it I keep forgetting about coursera, I want to finish a few of these before I graduate and have to get areal job

Vincent K. McMahon posted:

Looks like I might get to drop a class I had chosen to take next year, which means either goodbye functional programming class or goodbye...advanced networking. Im not 100% sure what I would I would get rid of

I would take networking because I assume it also covers some hardware topics which is always interesting

Forums Terrorist
Dec 8, 2011

I would do networking

disclaimer: i am retarded and actually enjoy it

Dodoman
Feb 26, 2009



A moment of laxity
A lifetime of regret
Lipstick Apathy
yeah i did a cisco unit and it was pretty drat fun, but you have to like networking

Vincent K. McMahon
Sep 13, 2014

by Ralp
Sorry yeah, networking last year was ok. Got lucky on the exam though.

OK so the classes I have just now are..one about teaching CS in highschool, where I spend 10 half days in a classroom being a teaching assitant, and think I might need to teach 1 lesson. No exam for this one.

The others are a class on computer architecture, which looks like hardware stuff obviously, seems fun. Adv Operating sytems, which is a class ive been told is good and again has a lot of hardware aspects to it. A class for sofware engineers workin in the financial world, taught by my future emloyees. Then there is adv networking. Cyber security (not sure on this one), functional programming (not sure on this either). oh yeah and an AI class, which seems fun but also really hard

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY

Vincent K. McMahon posted:

Sorry yeah, networking last year was ok. Got lucky on the exam though.

OK so the classes I have just now are..one about teaching CS in highschool, where I spend 10 half days in a classroom being a teaching assitant, and think I might need to teach 1 lesson. No exam for this one.

The others are a class on computer architecture, which looks like hardware stuff obviously, seems fun. Adv Operating sytems, which is a class ive been told is good and again has a lot of hardware aspects to it. A class for sofware engineers workin in the financial world, taught by my future emloyees. Then there is adv networking. Cyber security (not sure on this one), functional programming (not sure on this either). oh yeah and an AI class, which seems fun but also really hard
link your AI syllabus

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY
also pick whichever course has the most maths in it

my homie dhall
Dec 9, 2010

honey, oh please, it's just a machine

Vincent K. McMahon posted:

Sorry yeah, networking last year was ok. Got lucky on the exam though.

OK so the classes I have just now are..one about teaching CS in highschool, where I spend 10 half days in a classroom being a teaching assitant, and think I might need to teach 1 lesson. No exam for this one.

The others are a class on computer architecture, which looks like hardware stuff obviously, seems fun. Adv Operating sytems, which is a class ive been told is good and again has a lot of hardware aspects to it. A class for sofware engineers workin in the financial world, taught by my future emloyees. Then there is adv networking. Cyber security (not sure on this one), functional programming (not sure on this either). oh yeah and an AI class, which seems fun but also really hard

have you done fp before? do you know what language the class is taught in?

Workaday Wizard
Oct 23, 2009

by Pragmatica

coffeetable posted:

also pick whichever course has the most maths in it

do this

in the real world no one will give you time or motivation to do maths. so get it done in uni so that it stays in the back of your head when you do stuff in the future.

Vincent K. McMahon
Sep 13, 2014

by Ralp

coffeetable posted:

link your AI syllabus

By the end of the course students will be able to:

1: Demonstrate familiarity with the history of AI, philosophical debates, and understand the potential and limitations of the subject in its current form;
2: Map the basic components of an intelligent agent, and be able to map these onto other advanced subjects such as information retrieval, database systems, computer vision, robotics, human-computer interaction, reactive systems etc;
3: Implement basic search-based problem solving techniques;
4: Describe basic issues in planning;
5: Describe basic utility theory and a probabilistic framework for rational decision making;
6: Create and use simple belief networks using available software packages;
7: Straightforward machine learning techniques to learn from data;
8: Discuss the difficulty of computer perception.


Ploft-shell crab posted:

have you done fp before? do you know what language the class is taught in?

I done a raelly horrible group project last year using Erlang, but that is the extent of my fp knowledge. First week or two of the course is looking at something called livescript and then remainder is using haskell


Shinku ABOOKEN posted:

do this

in the real world no one will give you time or motivation to do maths. so get it done in uni so that it stays in the back of your head when you do stuff in the future.

remember im looking to drop one of these classes. I done enough math classes in 2nd year, barely passing some of them, to realise its probably not for me

Soricidus
Oct 21, 2010
freedom-hating statist shill

Vincent K. McMahon posted:

Cyber security (not sure on this one), functional programming (not sure on this either).
both of these could be really interesting if they're done well, or hellish if they're done badly. cyber security is more likely to be useful in the real world, if that's a consideration. have you done any crypto already?

Vincent K. McMahon
Sep 13, 2014

by Ralp

Soricidus posted:

both of these could be interesting if they're done well, or hellish if they're done badly. cyber security is more likely to be useful in the real world, if that's a consideration.

I know the coursework for cyber security is worth 20% and entails being given some encoded text and you need to work out the cipher for it lol

but yeah it seems like it would be useful. I am going for a mix between easy classes and things that are useful and interesting

my homie dhall
Dec 9, 2010

honey, oh please, it's just a machine

Given the choice, I think unless I had a prior interest in networking, I would take the fp class, because it will probably make you a better programmer.

e: if the choice is between fp and advanced networking

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY
why're you intimidated by that ML syllabus

Vincent K. McMahon posted:

I done enough math classes in 2nd year, barely passing some of them, to realise its probably not for me
yeah that's because you need more practice

Vincent K. McMahon
Sep 13, 2014

by Ralp

coffeetable posted:

why're you intimidated by that ML syllabus

for the amount of effort it looks like ill need to put in, im not sure if i am THAT interested or if i will get a few weeks in and then just kind of go idle

we actually do have a proper ML course too,

By the end of the course students will be able to:

1:Discuss the principle of learning from data;
2:Describe the main machine learning methods: regression, classification, clustering, probability density estimation and dimensionality reduction;
3:Use a selection of common machine learning algorithms and be aware of when one is to be favoured over other;
4:Implement and use machine learning algorithms in Matlab;
5:Discuss the major machine learning application area in, for example, Information Retrieval,
Human Computer Interaction, Bioinformatics and Computer Visions & Graphics;
6:Detail emerging machine learning approaches such as non-parametric methods and sampling techniques.

Adbot
ADBOT LOVES YOU

Pie Colony
Dec 8, 2006
I AM SUCH A FUCKUP THAT I CAN'T EVEN POST IN AN E/N THREAD I STARTED

syntaxrigger posted:

So an ML shop contacted me because I have java in my resume and I have lofty goals of one day not sucking at ML. They sent me a programming test that I did horrible in because I am not strong enough in when to use what data structures and algorithims. So instead of wallowing coffetable convinced me to post here for some insight into what I should have done.

if the company is well-known or has room to be picky with candidates, chances are they don't really just want a "sum these up, sort and return the first 10" solution. they are probably looking for candidates that know to use a heap to do the sorting in n log k, and probably someone that does all the counting in parallel.

  • Locked thread