d2jsp
Log InRegister
d2jsp Forums > Off-Topic > Computers & IT > Programming & Development > [C++] Pong Project > Ascii Art Game
Prev1234569Next
Add Reply New Topic New Poll
Member
Posts: 6,953
Joined: Sep 27 2003
Gold: 518.50
Oct 2 2009 01:05pm
Quote (Muukalainen @ Fri, Oct 2 2009, 12:21pm)
whoaaaa huge e-penis... impressive.

I'm glad you like it. ;)

Quote (llamaoo7 @ Fri, Oct 2 2009, 12:31pm)
It just things easier than having to open like a billion files to view your application's source.

Separation of concerns? Version control? I realize that you are probably not to the stage where you need to worry about this stuff, but people put things into "a billion files" for a damn good reason. Protip: If it is considered a "best practice" or "convention," there is generally a reason for it.
Member
Posts: 31,680
Joined: Nov 10 2007
Gold: 1.00
Oct 2 2009 01:11pm
Quote (ASBands @ Fri, 2 Oct 2009, 14:05)
Separation of concerns?  Version control?  I realize that you are probably not to the stage where you need to worry about this stuff, but people put things into "a billion files" for a damn good reason.  Protip: If it is considered a "best practice" or "convention," there is generally a reason for it.


Better protip: For my extremely simple Snake game, there's over 20,000 lines of code (yes, I improperly used classes to make it extrodinarly shorter, along with STL things).
Before I had multiple files, and everything was in main.cpp, it was extremely slow to compile (it had to compile EVERYTHING again and again and check it all over and over (syntax)), also...
Finding stuff was sort of "difficult" in a sense. Since somethings could obviously be sub-catageorized. For a lot of projects you make by yourself (small simple things) throwing it all into main.cpp is fine.

But for bigger projects, it isn't always the best of ideas; Especially when you're doing a "Team project" that requires multiple people editing code/adding simutainously. ^_^
Member
Posts: 11,637
Joined: Feb 2 2004
Gold: 434.84
Oct 2 2009 01:11pm
Quote (ASBands @ Fri, Oct 2 2009, 03:05pm)
I'm glad you like it. ;)


Separation of concerns?  Version control?  I realize that you are probably not to the stage where you need to worry about this stuff, but people put things into "a billion files" for a damn good reason.  Protip: If it is considered a "best practice" or "convention," there is generally a reason for it.


(he's messing with you)
Member
Posts: 6,953
Joined: Sep 27 2003
Gold: 518.50
Oct 2 2009 01:16pm
Quote (rockonkenshin @ Fri, Oct 2 2009, 02:11pm)
(he's messing with you)

You'd be surprised at how many people actually think this way.
Member
Posts: 31,680
Joined: Nov 10 2007
Gold: 1.00
Oct 2 2009 01:19pm
Quote (ASBands @ Fri, 2 Oct 2009, 14:16)
You'd be surprised at how many people actually think this way.


I used to for a long while... Until I tried writing a complex game (like Snake).
Where there's more than just a simple cout and color change of text.

:)
Member
Posts: 1,443
Joined: Jun 11 2008
Gold: 47.33
Oct 2 2009 02:17pm
Learn 20 Languages => Bullshit
Learn a new language every year => Bullshit

[ X ] Learn a few languages in-depth rather than 20 superficially
[ X ] Use OOD in OOP languages (why using it in the first place if you dont?)
[ X ] Use version control, bug trackers, ticket systems for bigger projects
[ X ] Be up to date always to use all the nice kickass stuff (test driven development, agile methods etc)
[ X ] Dont waste your time on 20 languages, but rather get a higher mathematics book, and study algorithms (=the flesh and bones of CS)
[ X ] While youre at it, grab a copy of GoF (Gang of Four - Design Patterns)
[ X ] Learn about software design, rather than insignificant syntax optimizations

Learn one language of each category (oop, script, dynamic, low lvl, platform independant) to
- understand the thinking and
- increase your personal "toolbox" (different nails call for different hammers, important!)
- broaden your horizon (also important)

Im not saying stick forever with what you have, but im also saying that learning 20 languages a lil is way worse than know 3 like the back of your hand.
Some things you cant do with intermediate to advanced levels, sometimes you just gotta be an expert at something, at least at one language, and reaching expert level isnt done easily. And when i say expert, i mean guru-level.
If you waste your time on 20 languages, you are either one of the two: a genious, or someone who is diversifying so much, that hes not really good at anything, only mediocre everywhere.

Member
Posts: 31,680
Joined: Nov 10 2007
Gold: 1.00
Oct 2 2009 02:24pm
Quote (Muukalainen @ Fri, 2 Oct 2009, 15:17)
Some things you cant do with intermediate to advanced levels, sometimes you just gotta be an expert at something, at least at one language, and reaching expert level isnt done easily. And when i say expert, i mean guru-level.
If you waste your time on 20 languages, you are either one of the two: a genious, or someone who is diversifying so much, that hes not really good at anything, only mediocre everywhere.


Thank you for the real reply. :)

I don't quite understand what you mean by "guru-level" but ok. I don't consider myself an "expert" or "advanced" by any means. I don't even consider myself "intermediate" although I'm starting to think I am.
The only language I've ever fully learned was C++ (more-over "Objective C" is what it's called I believe). I mix and intertwine the C and C++ (thus making it technically only C++) methods/libraries/stuff all the time.

I tried to learn Java, and the entire idea behind object oriented design is stupid when I think about it, or at least, I don't think in that "abstract" way people always talk about.
I'm an extremely logical person, and I think of things on a logical, sequencal, step-by-step, repition scale. Not this whacko dimension of jumping around using "objects" and "sending messages," although...
That was one of the main motives and goals behind writing Snake - to learn how you would do it in a "real world" situation. I'm no where near as proficient in the object oriented design/techniques as I am with procedural.

Languages I've learned/tried to learn: Java, JavaScript, Batch-file scripts, C, C++, VBS, AutoIt (another scriptting language, extremely simple/similar to C++), C#, and the libraries I've tried to learn were DirectX/OpenGL.
Member
Posts: 6,953
Joined: Sep 27 2003
Gold: 518.50
Oct 2 2009 02:31pm
Quote (Muukalainen @ Fri, Oct 2 2009, 03:17pm)
If you waste your time on 20 languages, you are either one of the two: a genious, or someone who is diversifying so much, that hes not really good at anything, only mediocre everywhere.

It is pretty easy to pick up on a new language. A year to become an expert at a language? Trivial, especially if you work with it a lot.

Let's see, in my day-to-day job, what languages do I use?

Java/JSP + J2EE + Hadoop -- for large web interaction systems
Scala -- for application middleware (sits behind the Java/JSP frontend)
SQL (three dialects: MySQL, T-SQL and PL-SQL) and JQL over Hibernate -- for the parts of the data layer
C#/ASP.NET -- more web programming crap
Javascript -- yet more web programming crap
(X)HTML + CSS -- yet more web programming crap
Mythryl, Perl, Bash, Make, Python, PowerShell scripting -- for scripting things
Sed, grep, regex -- stream processing

These are daily things and what I happen to be using right now. I'm probably forgetting some, too. A few months ago it would have been C++, C#, Ocaml and MATLAB (and all the scripting stuff). A good programmer can pick up a language in a week. You shouldn't be bound by the language at all.

This post was edited by ASBands on Oct 2 2009 02:33pm
Member
Posts: 31,680
Joined: Nov 10 2007
Gold: 1.00
Oct 2 2009 02:34pm
Quote (ASBands @ Fri, 2 Oct 2009, 15:31)
That is the nature of doing this for a living.


I don't program for a living. I don't plan on programming for a living.
I like to program games, for myself. I like to program chintsy programs for myself.
I like to program game hacks, for myself. I like to make game cracks, for myself.

I've never had a formal education. That's the big difference here.
I've spent $0 into learning these programming languages (ok maybe $40 on books, but they were $2.50 to $5 a piece - used at Half Price Books).

I'm a hobbyist, nothing more, nothing less. I also crochet, but I've never taken classes on that and made well over $250 American on it.
I can crochet American/Texan flags, and large blankets for your bed. It's $20 for a ball of yarn, so I'd sell a blanket for $40. I have pictures if you want to see.
Member
Posts: 1,443
Joined: Jun 11 2008
Gold: 47.33
Oct 2 2009 02:35pm
Then I wanna see how you can write metaclasses, decorators and bytecompiler optimzations in python after a week...

I agree that you can pick up the basic syntax of a language within a week, thats really nothing special. every monkey can learn syntax. but understanding the philosphy and conventions, best-practises, style guides, etc... getting into the community of a langage... thats what i count as "knowing a language". and thats not so quickly done. I am working around 12 months now, the last 6 months around 50h weekly on python. and still i would describe myself as a python newbie, compared to what there is still to learn... btw part of knowing a language is also knowing its libraries (which are huuuuuuuge for python - batteries included philopsophy)

This post was edited by Muukalainen on Oct 2 2009 02:38pm
Go Back To Programming & Development Topic List
Prev1234569Next
Add Reply New Topic New Poll