Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×

Comment Re:Even "Experts" Struggle with OOP (Score 1) 396

my "rule of thumb" for "object or not?" tends to be this:

Is this a concept with both data and functions associated with it? If Yes: Good candidate for object
Is this a linear task (A->B conversions, etc)? If Yes: poor candidate for object (though the data it is working on might be a good candidate)

Comment Re:DP, Algorithms, OOP A&D, Threading, etc (Score 1) 396

my school's core curriculum is actually how i crafted the list. Prior to high school I was a self taught programmer, in high school i was blessed to have a computer science class taught by a former lead developer from Apple (Newton platform).

I looked my university curriculum and deduced what i would have never properly learned as a self taught programmer.

Before my high school teacher educated me in the right ways to do things I was the worst type of BFI self-taught you'd ever seen: like the vast majority of self-taughts.

Comment Re:Proper code analysis (Score 1) 396

"Can be picked up on your own" and "were picked up on your own" are rarely the same thing. I was a self taught programmer until high school, where there was CS class (And later AP CS) taught by a former Apple Newton platform lead developer. As a self taught, I was fairly typical from everything I read.

He took that raw talent, and enthusiasm, and turned them into real talent.

Are there truly wizard self taught programmers? Absolutely
Are most self taught programmers just practicing BFI? Absolutely.

Comment Re:I'm Interested in the Opposite View (Score 1) 396

all these things were taught at the university I went to.. in my (admittedly limited) experience the people who don't get taught all these things [and others things mentioned elsewhere in this thread as being lacking from university] are those who went to community college. The Community Colleges here have computer programming programs, that teach absolute garbage.

Then again: I'm in Iowa, and I went to Iowa State University (where the automatic digital computer was invented)

Comment Re:Algorithms, data structures, systems (Score 1) 396

communication skills:
with technical people about technical issues? extremely good
with non-technical people about technical issues? adequate

the other guy who had the same level of experience as me was actually my Automata and Computability TA, half the class credited him with their passing grades.

Comment Re:Algorithms, data structures, systems (Score 2, Interesting) 396

As a recent CS grad (dec 2008, but that was "school 2 years", "break work in field 2 years", "school 2 years") I can attest to the lack of skill of some of the people who only retain information for the duration of the class they're in. What was even more disturbing was in my graduating class (only 8 of us) the two of us with the most experience: academic, open source, professional full time work in the field were the LAST to get jobs.

Comment DP, Algorithms, OOP A&D, Threading, etc (Score 5, Informative) 396

Design Patterns: common "Template" solutions to regularly encountered problems/variations-on-that problem. Be careful when learning these that you don't fall victim to "when you have a hammer, everything is a nail". Also learn the Anti-patterns, wikipedia has a good list of anti-patterns.

Algorithms & Data Structures: Analysis, average running time Big O is most important, but understanding worst-case runtime is important too. Designing algorithms vs knowing when to leverage an existing one.

the C++ standard library provides a great many of these, it has a high efficiency sort (from ), it has good collection data structures (vectors, linked lists, maps, etc)

Objected Oriented Analysis And Design: Knowing when to make something an object, when and how to use inheritance and polymorphism, when to not make something an object. Plain old data objects. separation of responsibility: UI is not logic, logic is not UI.

Threading: proper thread synchronization techniques (mutexs, semaphores, conditions, etc), threading patterns such as Producer-Consumer, Inter-process communication

Automata & Computability: (Deterministic|Nondeterministic) Finite State Machines, Regular Languages, Turing Machines

Programming Languages: LL language parsing & rules authoring.

Computer Architecture: Processor design, pipelining, caching, function calling conventions, etc - how to use this knowledge to write more efficient programs

Comment Re:Privacy invasion? (Score 1) 495

"According to Tynt Insight's page, no individually identifiable info is provided."

apparently you don't know how things work... IP address + "list of search topics" is enough to personally ID someone even if they never search for themself or a relative.

IP Address + "things they've highlighted" have a very high probability of being able to do that too

Slashdot Top Deals

May Euell Gibbons eat your only copy of the manual!

Working...