|
Thread Rules 1. This is not a "do my homework for me" thread. If you have specific questions, ask, but don't post an assignment or homework problem and expect an exact solution. 2. No recruiting for your cockamamie projects (you won't replace facebook with 3 dudes you found on the internet and $20) 3. If you can't articulate why a language is bad, don't start slinging shit about it. Just remember that nothing is worse than making CSS IE6 compatible. 4. Use [code] tags to format code blocks. |
On January 15 2013 00:32 lepape wrote: Short question :
Realistically speaking, if someone starts in a Computer Science program in his late 20's, with no prior programming knowledge whatsoever and with average skills in maths, what's his chance of doing as well as other students and becoming an above average programmer? (and I mean without studying 120 hours a week trying to catch up)
I'm in my late 20s, am in my 2nd year of a software engineering degree, had no prior programming knowledge, and I can say you should do just fine. My course is specifically focused on making games, so there's a fair bit of maths involved, but if you don't intend on doing games then you probably won't need much maths at all. I got lucky and managed to get a part time job last year doing .NET based web stuff (despite having no experience with web languages!), and I haven't needed to use any maths at all. I'm also finding it quite a lot easier than games programming haha.
|
I downloaded the D3 source code when they released it, but didn't really appreciate it because I had nothing that large to compare it to. Thanks for the read!
|
Was about to post this as well. Great article, really. How the hell can Kotaku have such a mix with articles that are total crap and then come up with something like this? Anyway, great read for anyone who wants to go more beyond than just making a program functional but nothing more.
EDIT: Fuck me, they even have John Carmack himself commenting the article in the comments.
|
On January 15 2013 04:28 Soan wrote:Show nested quote +On January 15 2013 00:32 lepape wrote: Short question :
Realistically speaking, if someone starts in a Computer Science program in his late 20's, with no prior programming knowledge whatsoever and with average skills in maths, what's his chance of doing as well as other students and becoming an above average programmer? (and I mean without studying 120 hours a week trying to catch up) I'm in my late 20s, am in my 2nd year of a software engineering degree, had no prior programming knowledge, and I can say you should do just fine. My course is specifically focused on making games, so there's a fair bit of maths involved, but if you don't intend on doing games then you probably won't need much maths at all. I got lucky and managed to get a part time job last year doing .NET based web stuff (despite having no experience with web languages!), and I haven't needed to use any maths at all. I'm also finding it quite a lot easier than games programming haha.
On January 15 2013 00:48 Tobberoth wrote:Show nested quote +On January 15 2013 00:32 lepape wrote: Short question :
Realistically speaking, if someone starts in a Computer Science program in his late 20's, with no prior programming knowledge whatsoever and with average skills in maths, what's his chance of doing as well as other students and becoming an above average programmer? (and I mean without studying 120 hours a week trying to catch up) Just fine, depending on the CS program. Programming actually has very little to do with math in most areas. If you're coding drivers etc in C, you might need math to optimize algorithms etc, and if you program video games, you need math for graphics/physics, but if you just work on company applications, web applications, databases etc, math is quite irrelevant, it's all about general problem solving. As for prior programming knowledge, most CS programs probably have introductory courses which are good enough to get you going, at least if you're a veteran computer user, which pretty much any young person today is. I'd say any person who is interested in becoming a programmer can do so without much issue. Question is of course what you define as an "above average programmer".
Thank you for the answers.
|
So, im kind of having a hard time with my current study. At this moment i study "Mechatronics" at college. Im having a real hard time because it mixes "machine construction", "Electronics", and "Programming. Im having a really hard time with the mechanical part of this study, but love the programming part. Its very weird programming though. You program with microcontrollers, for instance TRIS Registers. I have programmed C++ in my spare time for a bit, and its nothing alike.
I do like programming though, is it wise to choose programming as study now that i have learned coding in some weird as shit language? Or is the coding that different that ill still have to start over?
Edit: I do find the programming i do now to be harder than C++. However i think i've only grasped the top of regular programming.
|
I'm 9 months into full time development work. I'm still cognizant of just how much I don't know, but it's also easy to see how much I've improved over the same period.
On some especially difficult aspects of my current project I still occasionally have the "uhh can I actually do this?" moments, but by and large I'm pretty comfortable with what I'm doing at this point.
|
Yeah, I think Fabien Sanglard's site has been linked in here before, its quite good. The Quake 2 code review is especially interesting, and I just love reading Carmack interviews. Everyone should also read Carmack's entries on AltDevBlogADay ( http://www.altdevblogaday.com/author/john-carmack/ ), they're excellent.
|
On January 15 2013 09:09 Craton wrote: I'm 9 months into full time development work. I'm still cognizant of just how much I don't know, but it's also easy to see how much I've improved over the same period.
On some especially difficult aspects of my current project I still occasionally have the "uhh can I actually do this?" moments, but by and large I'm pretty comfortable with what I'm doing at this point.
Don't worry, even 9 years or even 19 years into software development you will ask yourself "Why did i write so stupid code?" for stuff you wrote 9 month before. If you don't... well, then you are a bad programmer even if you don't think so.
On January 15 2013 00:32 lepape wrote: Short question :
Realistically speaking, if someone starts in a Computer Science program in his late 20's, with no prior programming knowledge whatsoever and with average skills in maths, what's his chance of doing as well as other students and becoming an above average programmer? (and I mean without studying 120 hours a week trying to catch up)
It's hard to become a good programmer at that point. Mediocre and even well paid, sure, but above average or even "good" is unlikely. Apart from general problem solving, the most important skill for programming is pattern recognition (i don't mean design patterns), something you don't learn at school but that comes with experience. Lots of experience. Those that program since their childhood will always be better than you and there are quite a few of those.
|
I meant more of converting some extremely complex business logic into effective code.
|
how do you write to a renderbuffer in opencl? the pixels are of GL_RGBA8 which translates to CL_UNORM_INT8. so i assume i can just write_imagef() it? and do i declare the argument as a (f.ex) write_only image2d_t?
|
hey guys, sorry if this question does seem abit over asked or something, im not quite sure and i havent really seen any solutions to it.
I'm starting my 2nd year of computer science in about early march and about 2 of my papers will be based on C/C++ , i just want someone to point out a good book/pdf i could read and do some examples from so i can get a head start on my courses. I do have a solid knowledge of basic Java (learnt it in first year of comp sci) and just wanna push myself for this year.
Thanks.
|
On January 17 2013 14:28 SpaceFighting wrote: hey guys, sorry if this question does seem abit over asked or something, im not quite sure and i havent really seen any solutions to it.
I'm starting my 2nd year of computer science in about early march and about 2 of my papers will be based on C/C++ , i just want someone to point out a good book/pdf i could read and do some examples from so i can get a head start on my courses. I do have a solid knowledge of basic Java (learnt it in first year of comp sci) and just wanna push myself for this year.
Thanks.
Start with The C Programming Language. Then, expert C programming. Then once you've mastered those two books, keep a copy of C: A Reference around. That's for C, I don't program in C++ ( And for the love of god, don't say C/C++ because they're not even remotely the same).
C Programming Language
Expert C
C: A reference Manual
If you want to become a better programmer in general, go to your school's library and grab this book which will introduce you to Scheme (Functional Programming) and give you a big overview of programming:
Structure and Interpertation of computer programs (MIT book)
At this point, if you think you're a badass, pick up The Art of Computer Programming by Knuth and proceed to realize you know nothing. Sorry I can't help you with C++ books. But honestly, if you know C, the logic of programming in C++ should be completely clear. Learning object-oriented programming and agent-oriented programming might be conceptually difficult though.
|
I have a question regarding web design--how the front-end connects with the back-end. Warning: A very novice question.
Since last month, I've been learning a lot about web programming, and I feel pretty confident to finally start on a fairly simple and potentially a great website I can use with friends. However, I barely know anything about the appearance and style of websites. For example, I'm thinking about making the appearance somewhat like Instagram or tumblr, but how would I able to achieve that? I've heard of Bootstrap, but is that the only feasible way? Do you guys recommend it? Maybe a different framework?
And more importantly, how do you plan out the whole design process? Finish my web app before starting on the style, vice-versa, or do both little by little?
And are there things I should take note of if I may create a mobile app for it in the future?
|
Thanks for the links!
|
On January 18 2013 22:02 billy5000 wrote: I have a question regarding web design--how the front-end connects with the back-end. Warning: A very novice question.
Since last month, I've been learning a lot about web programming, and I feel pretty confident to finally start on a fairly simple and potentially a great website I can use with friends. However, I barely know anything about the appearance and style of websites. For example, I'm thinking about making the appearance somewhat like Instagram or tumblr, but how would I able to achieve that? I've heard of Bootstrap, but is that the only feasible way? Do you guys recommend it? Maybe a different framework?
And more importantly, how do you plan out the whole design process? Finish my web app before starting on the style, vice-versa, or do both little by little?
And are there things I should take note of if I may create a mobile app for it in the future?
I can't answer your last question, I too want to create a web application but I'm a super green novice who hasn't even started to learn the programming side of it so I'm not entirely show how a web development company would go about it (I know "agile" is the hip thing nowadays). I do come from the front-end side of things though and usually you start with answering "Who do you want on your site, what do you want them to do once they get there, and how will you measure success?). Once these are answered you design the site around these things. You start off with a wireframe, maybe using a 960 grid to do your layout in photoshop, keeping good design and usability principles in mind.
If you need inspiration you can go to a site like cssmania to look for design ideas and look through other web apps for UX/UI design. After you've designed your layout you usually draw it on paper and start to divide the site in DIV blocks.
I also recommend checking out these tutorials if you're interested in using Boostrap:
http://webdesign.tutsplus.com/tutorials/workflow-tutorials/quick-and-easy-interactive-wireframes-with-bootstrap/
http://webdesign.tutsplus.com/tutorials/complete-websites/twitter-bootstrap-101-introduction/
|
On January 15 2013 14:21 tec27 wrote:Yeah, I think Fabien Sanglard's site has been linked in here before, its quite good. The Quake 2 code review is especially interesting, and I just love reading Carmack interviews. Everyone should also read Carmack's entries on AltDevBlogADay ( http://www.altdevblogaday.com/author/john-carmack/ ), they're excellent. I have to concur. Whenever I am playing obviously badly programmed game that I actually like I am always thinking, shame that Carmack was not doing this game. The quality is actually obvious even without programming knowledge. Just run old idSoft games on new computers and OS. They mostly run very well without the bugs that plague the other games from that time or even much newer games for that matter.
|
What's the syntax for writing this without the use of the local variable x?
for (int i = 0; i < 10; i++) { int x = i; Task.Factory.StartNew(() => SomeMethod(x)); }
--
Agile is indeed the hip thing, but it's still a giant pain in the ass.
You do get to see yourself falling farther and farther behind every 2 weeks, though. I guess that's something.
(Scrum is dumb; don't do Scrum.)
--
I personally don't think it really matters where you start if you manage everything well, but you really have to set out clear business needs and what tasks are required to accomplish said business needs. Assuming you set things up correctly, it should not be hard to wire your backend to a frontend or vice versa. You'll get into trouble if you interleave them and then want to change one or the other.
The one nice thing of Agile (I guess this is "Agile" and not some generic thing) is the breaking of things into very bite-sized pieces. You'll find it much easier to keep things moving if you have a set of general goals and then take small chunks and break them into little tasks, rather than trying to plan a project in its absolute entirety, especially for beginner, personal projects. It gives you a sense that things are actually progressing and that you're not just staring down the barrel of some 6 month blob of development.
|
On January 19 2013 14:20 Craton wrote:What's the syntax for writing this without the use of the local variable x? for (int i = 0; i < 10; i++) { int x = i; Task.Factory.StartNew(() => SomeMethod(x)); } I don't think there is one. Lambdas are closures, so if you put () => SomeMethod(i) you're going to end up using whatever the value of i is whenever the lambda is actually called (likely 10).
|
On January 12 2013 12:29 phar wrote:Show nested quote +On January 12 2013 02:21 Frigo wrote:On January 11 2013 16:36 phar wrote: Either one is a godsend when you end up having to code something quick over a spotty remote connection. Or you know, you could just code it on localhost and upload it. Not if you're not allowed to code locally. Ah yes, bypassing version control, testing, continuous integration, and all the advantages of modern software engineering. What a grand idea!
|
I read this when you posted it, and it's been bothering me ever since. I very, very strongly disagree with several of the points that are made in the Kotaku article.
Two that stand out to me especially:
1. The author makes a big deal about how much better public properties are than private properties combined with getters and setters. This is, at best, a very situational decision to make. There are certainly advantages in using public properties, and I don't disagree with the advantages that he points out (readability and avoiding unnecessary code clutter), but they also make some problems. Adding a trigger that fires whenever a certain value changes is trivial when you already have setters for all of your class properties, but changing a class to use a setter instead of a public property can be nearly impossible - try searching your source code for all the instances of ".name =", then verifying that every variable does in fact refer to an instance of the correct class.
My other problem with public properties is language-specific. In C, which is the language in discussion in the article, strong typing gives you a fair bit of validation baked into the language, since the compiler won't let you set an int to a string. In languages like PHP or Javascript that are not strongly typed, though, using setters allows you to add validation that is otherwise impossible, which is a really easy way to prevent some trivial programmer errors.
2. This one I really hate: The article's author poo-poos comments. Good code should be self-documenting, he says, and then uses an example of a horrible comment to explain why we shouldn't use comments at all. The fact of the matter is, there are an immense number of things that programmers write every single day that are simply not human parsable without at least a bit of thinking, and saying any code that requires a comment is probably badly written is utterly ridiculous. There is a huge difference between the example of bad commenting in the example, which looks like something a freshman who was just told to comment her code would write, and the sort of helpful comments that make code more readable and reduce the time it takes another programmer to understand it.
Seriously, this one completely infuriates me. Writing good comments is, in my mind, as important and sometimes as difficult to do well, as writing good code. Writing code that does its job is fairly easy - a large part of a programmer's job in writing code is not to communicate to the computer, but to communicate to a human reader, and good comments are immensely helpful in that task.
|
|
|
|