Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  

Poll

What programming topic would you want the next challenge to be about?  (It might be a good opportunity to focus on a subject you're not familiar with or to reinforce knowledge on one that you already know)

Control Flow
- 2 (2.2%)
Arrays, Strings, Pointers, and References
- 8 (9%)
Functions
- 4 (4.5%)
Basic object-oriented programming
- 30 (33.7%)
A bit more advanced OOP (Composition, Operator overloading, Inheritance, Virtual Functions)
- 18 (20.2%)
Templates
- 8 (9%)
Other (Explain)
- 4 (4.5%)
Working with files?  (Streams)
- 15 (16.9%)

Total Members Voted: 89


Pages: 1 ... 6 7 [8] 9 10 ... 78

Author Topic: Programming Challenges & Resources (#bay12prog) Initiative  (Read 97587 times)

Willfor

  • Bay Watcher
  • The great magmaman adventurer. I do it for hugs.
    • View Profile
Re: Programming Challenges & Resources (#bay12prog) Initiative
« Reply #105 on: May 28, 2010, 12:30:11 am »

Hey DrPizza, Blacken can generally get away with it because he takes the time to explain why he's saying something. While you're being deconstructive, you should also try to be constructive. Hostility shuts down people's will to listen to your point of view, and can make them dismissive of you.
Logged
In the wells of livestock vans with shells and garden sands /
Iron mixed with oxygen as per the laws of chemistry and chance /
A shape was roughly human, it was only roughly human /
Apparition eyes / Apparition eyes / Knock, apparition, knock / Eyes, apparition eyes /

Willfor

  • Bay Watcher
  • The great magmaman adventurer. I do it for hugs.
    • View Profile
Re: Programming Challenges & Resources (#bay12prog) Initiative
« Reply #106 on: May 28, 2010, 12:31:36 am »

Also, dammit you guys, stop double posting. There is an edit button!

Double posting for emphasis.
Logged
In the wells of livestock vans with shells and garden sands /
Iron mixed with oxygen as per the laws of chemistry and chance /
A shape was roughly human, it was only roughly human /
Apparition eyes / Apparition eyes / Knock, apparition, knock / Eyes, apparition eyes /

DrPizza

  • Bay Watcher
    • View Profile
    • Ars Technica
Re: Programming Challenges & Resources (#bay12prog) Initiative
« Reply #107 on: May 28, 2010, 01:00:39 am »

Hey DrPizza, Blacken can generally get away with it because he takes the time to explain why he's saying something. While you're being deconstructive, you should also try to be constructive. Hostility shuts down people's will to listen to your point of view, and can make them dismissive of you.
I can't be constructive when people are writing things that aren't even coherent English.
Logged

Siquo

  • Bay Watcher
  • Procedurally generated
    • View Profile
Re: Programming Challenges & Resources (#bay12prog) Initiative
« Reply #108 on: May 28, 2010, 03:59:26 am »

It's coherent, it's english, it's just not true. Or maybe it is for very weird values of STL, which would negate the S of the STL.

There's no need for the bile or berating people for stating untrue things. Or for the use of the F word.

Relax, take a deep breath, and remember the times when programming was fun.
Logged

This one thread is mine. MIIIIINE!!! And it will remain a happy, friendly, encouraging place, whether you lot like it or not. 
will rena,eme sique to sique sxds-- siquo if sucessufil
(cant spel siqou a. every speling looks wroing (hate this))

Alexhans

  • Bay Watcher
  • This is toodamn shortto write something meaningful
    • View Profile
    • Osteopatia y Neurotonia
Re: Programming Challenges & Resources (#bay12prog) Initiative
« Reply #109 on: May 28, 2010, 05:34:59 am »

Hey DrPizza, Blacken can generally get away with it because he takes the time to explain why he's saying something. While you're being deconstructive, you should also try to be constructive. Hostility shuts down people's will to listen to your point of view, and can make them dismissive of you.
I can't be constructive when people are writing things that aren't even coherent English.
You can't be constructive?  Then what are you being?  If you're not being helpful I'd ask you to please avoid posting here.  If you're not making things better don't make them worse.  If you can't show (by example) a right way to do things there's no need for you to post all that insulting series of questions.  The more I think about them, the more I dislike what you did with your whole "what the hell".  A simple, "I'm not understanding what you're trying to say, It seems you have some mixed concepts because..." would've sufficed and helped.  Not what you did. 

Dammit guys.  Is it really that hard to stay out of the thread if you're not going to help?  There's 10000 threads to go fight out your ego or to prove you're right about something.  Not here.  Thank you VERY much.

I'm going to work now.  I'll catch up with you in 10+ hs.
« Last Edit: May 28, 2010, 05:38:41 am by Alexhans »
Logged
“Eight years was awesome and I was famous and I was powerful" - George W. Bush.

Normandy

  • Bay Watcher
    • View Profile
Re: Programming Challenges & Resources (#bay12prog) Initiative
« Reply #110 on: May 28, 2010, 09:09:01 am »

To clear stuff up:
vector<obj> works. vector<obj> creates spaces in memory sizeof(obj) which hold objs. They are initialized by the value you pass to push_back(), and generally means it will call the copy constructor of that class, or use the default constructor. vector<obj*> also works. It creates an array of pointers which point to memory spaces. Both work, but both accomplish different things in memory. Which one you should use depends on what you need to do.

sizeof(obj) is guaranteed always to be constant after compile-time. Because of the statically-typed nature of C++, it must be constant, otherwise pointers and arrays would break down. Which they obviously do not.

Generally speaking, one of the better ways to learn C++ is to try it out yourself, and stop thinking about it. It's a really hard language to wrap your head around; so don't.
Logged

Blacken

  • Bay Watcher
  • Orange Polar Bear
    • View Profile
Re: Programming Challenges & Resources (#bay12prog) Initiative
« Reply #111 on: May 28, 2010, 10:33:26 am »

Hey DrPizza, Blacken can generally get away with it because he takes the time to explain why he's saying something. While you're being deconstructive, you should also try to be constructive. Hostility shuts down people's will to listen to your point of view, and can make them dismissive of you.
Their loss. DrPizza is the guy I go to when I have a question. Most insanely knowledgeable person I know.

It's not his fault he's British. :(


More seriously, I don't agree with DrP doing that, but it's not at all unwarranted at that point. There's just only so much you can do with incoherence.
Logged
"There's vermin fish, which fisherdwarves catch, and animal fish, which catch fisherdwarves." - Flame11235

DrPizza

  • Bay Watcher
    • View Profile
    • Ars Technica
Re: Programming Challenges & Resources (#bay12prog) Initiative
« Reply #112 on: May 28, 2010, 11:06:46 am »

Quote
You can't be constructive?  Then what are you being?  If you're not being helpful I'd ask you to please avoid posting here.  If you're not making things better don't make them worse.  If you can't show (by example) a right way to do things there's no need for you to post all that insulting series of questions.  The more I think about them, the more I dislike what you did with your whole "what the hell".  A simple, "I'm not understanding what you're trying to say, It seems you have some mixed concepts because..." would've sufficed and helped.  Not what you did. 
I'd already stated categorically that vector<obj> "exists". What more can I do when someone continues to claim that it doesn't? He's clearly not interested in people pointing out the error of his ways, so I feel that perhaps pointing out the astonishing peculiarity of his claims will encourage him to reassess. Certainly, stating things matter of factly did not achieve this goal.
Logged

eerr

  • Bay Watcher
    • View Profile
Re: Programming Challenges & Resources (#bay12prog) Initiative
« Reply #113 on: May 28, 2010, 05:06:53 pm »

I'll admit I'm completely wrong if Blacken admits he's a complete dick.

Logged

Blacken

  • Bay Watcher
  • Orange Polar Bear
    • View Profile
Re: Programming Challenges & Resources (#bay12prog) Initiative
« Reply #114 on: May 28, 2010, 06:06:11 pm »

One of those two things is self-evident. Namely, that you are wrong. I am an asshole to people who don't or won't think (as is DrPizza--great minds think alike, hur hur), but I am not a complete dick.

If you can't admit when you are wrong, you do not belong in a programming field. Everyone is regularly wrong.
Logged
"There's vermin fish, which fisherdwarves catch, and animal fish, which catch fisherdwarves." - Flame11235

eerr

  • Bay Watcher
    • View Profile
Re: Programming Challenges & Resources (#bay12prog) Initiative
« Reply #115 on: May 28, 2010, 06:57:10 pm »

One of those two things is self-evident. Namely, that you are wrong. I am an asshole to people who don't or won't think (as is DrPizza--great minds think alike, hur hur), but I am not a complete dick.

If you can't admit when you are wrong, you do not belong in a programming field. Everyone is regularly wrong.
If you can't keep your rage out of a single paragraph, you should not give people advice.
Logged

Normandy

  • Bay Watcher
    • View Profile
Re: Programming Challenges & Resources (#bay12prog) Initiative
« Reply #116 on: May 28, 2010, 07:12:04 pm »

Usefulness of Advice ¬∝ Niceness of Advice
« Last Edit: May 28, 2010, 07:14:12 pm by Normandy »
Logged

eerr

  • Bay Watcher
    • View Profile
Re: Programming Challenges & Resources (#bay12prog) Initiative
« Reply #117 on: May 28, 2010, 07:43:15 pm »

Usefulness of Advice ¬∝ Niceness of Advice
I never said his advice wasn't useful. I am saying that blacken should not give people advice, while (apparently) locked in bitter torment.

Logged

timmeh

  • Bay Watcher
    • View Profile
    • My Portfolio
Re: Programming Challenges & Resources (#bay12prog) Initiative
« Reply #118 on: May 28, 2010, 07:55:33 pm »

Back on topic....  Something Blacken pointed out to me via PM, the more coding-trick-based challenges (I.E. "write a quine") aren't particularly helpful as far as actually progressing your skill.  They're far from useless, I thoroughly enjoy them, but if you're only doing the challenges to try to further yourself, you'd probably be better off tackling more generally applicable challenges, I.E. algorithm design, or data structures (such as linked-lists, trees, etc) and how they work.

The challenges Alexhans wrote up in the original post would be a great launching point for someone fairly new to a language, since they'd teach input/output, parsing (and the high resolution timer thing is just useful in general).  Perhaps we should try to put together some increasingly complex challenges along similar lines?  Seems to me a series of challenges that teach a language, but force the user to learn to "RTFM/STFW" rather than just copying code from a tutorial, would be a far more effective teaching device anyways.  Besides, it'd be a far more constructive way to funnel the talents of the more experienced programmers (which I am most definitely not, although I'd be glad to help in whatever way I can). 

Meh, just my two cents, take it or leave it, for what it's worth.
Logged
On the Wall is a Masterfully engraved carving of Urist McHardcastle and Goblins. Urist McHardcastle is surrounded by the Goblins. The Golbins are stamping on Urist McHardcastle. Urist McHardcaste is laughing at the Goblins. The carving related to the prolonged and bloody death of Urist McHardcastle in the Fall of 1659, the Winter of 1659, and the Spring of 1660. On the engraving is an image of Cheese.

Normandy

  • Bay Watcher
    • View Profile
Re: Programming Challenges & Resources (#bay12prog) Initiative
« Reply #119 on: May 28, 2010, 08:34:22 pm »

Personally, I think a good mix two is probably the best way to approach learning a new language. Learning C++ for me entailed learning basic computer-science kind of stuff (e.g. bubble-sort), problem-solving (e.g. if you've got a list of strings and you want strings that closely match a given string), language peculiarities (e.g. I still don't know the rules behind virtual destructors. Wtf. Sometimes it compiles, sometimes it doesn't, though I suspect that's because definitions in headers are not always recompiled), coding practices (e.g. being able to use all that nice boilerplate code they've done for you in <algorithm>), and design (putting it all together). It builds character at the very least - reading documentation is a necessary skill in programming, and being able to quickly learn how to use things that others have written is one of the main skills necessary for programming in more extensive languages like C++, I have found. And learning how to turn thought processes into code is probably the most important skill - and for beginners, it might actually be better that such processes are rather mundane - you wouldn't teach English to someone by starting them off with literature, even if it evokes more thought than say, simple conversation.
Logged
Pages: 1 ... 6 7 [8] 9 10 ... 78