Tag Info

Hot answers tagged

94

Building more complex programs comes with experience. When I first programmed I thought I was doing well if it was over 25 lines long (and I had to use the scroll bar) Now I write hundreds of lines a day for years on the same project application. You might find this page interesting "Teach Yourself Programming in Ten Years" http://norvig.com/21-days.html ...


70

I was always overwhelmed by very large projects also, like the ones you find on SourceForge or GitHub. I wondered how anyone, or even a team, could understand what was happening across 10's or 100's of files, with thousands and thousands of lines of code. No one does. At least initially. Projects are organic things. What starts off as a really simple idea, ...


34

It seems to me that you are asking two different questions: How if else works internally? What if is in terms of high level programming? This answer is for question 1. For question 2 see other answers. Gustav Bertram's answer seems very clear. Before your code gets executed, it must be translated into machine code. The translation is done by either a ...


28

Even the biggest program starts with an idea and is written one line at a time. The best (perhaps the only) way to learn how to write real-world programs is to start doing it. When you run into problems, you search the web or ask here for solutions to those problems. Eventually, you'll gain experience and have to ask less often. However, there are some ...


17

This answer is about languages like C, C++, Java, PHP and Javascript. There are other programming languages that work differently. if is a keyword, and else is a keyword. When they are used in code, if and else together form a control flow statement. Class methods, or static methods are always functions or procedures that are attached to a class. "Method" ...


15

What you're talking about is more software engineering than programming. It's a little bit architecture, a little bit "best practices" and "design patterns," a little bit working with others. While there are books that can help, most of it comes from experience. Nobody starts out writing, say, Microsoft Word. Think about a large, "real" program that you ...


9

You won't figure out how to program unless you'll face a real task. No theory would ever replace a simple real-world task. Before starting working on r-w scenarios, I was naively reading lot's of books, with all examples, but when I faced a real problem, I just couldn't gather all my theoretical knowledge to complete the task. If you are starter, I'd ...


8

Every one(Every one who uses the internet) uses Google these days. No they don't. I don't, but then I am a little biased in favour of another search engine:-) 1.Question : How important do you think this is for a programmer? To be able to use a search engine? Very. 2.Question : How does an experienced search ( more knowledge on the issue ) ...


8

There is the well-known Programmer Competency Matrix, I don't think you'll get a more thorough description of "levels" in programming aptitude than that.


8

IMHO, to have a successful career in Software Development you will need to constantly learn. I have associate degrees in programming and networking and have been programming professionally for 12 years, this has required me to continuously learn. My advice is to embrace it. Focus on improving the way you learn. I periodically read blogs, watch YouTube ...


7

It can actually be several things. In imperative languages like C++ or Java, it is a statement type. In pure object-oriented languages like Smalltalk it is an instance method of boolean. In pure functional languages it is a function. But in all languages it is a primitive. Some form of conditional must be built into the language. It may be slightly ...


6

You're looking at the whole huge program and it seems impossible. But the whole thing is made up of little stupid programs like the ones that you're saying "don't do anything useful." What you need is experience breaking down huge complex tasks into tiny simple tasks. That is the root of all programming. The rest is just semantics.


6

Just like driving or cooking, programming is something you learn to do by doing. Practice is irreplaceable. If the textbook examples are already too basic for you, that's great! Time to move for something more complex - and you already can figure out some challenging exercises for yourself. Or, if you have a specific idea in mind, break it to bits. Solve a ...


6

Question: How important do you think this is for a programmer? Very important. It is impossible to remember everything about programming in your head, and the internet is the biggest help library out there. Being able to quickly and efficiently find what you are looking for is invaluable. Question: How does an experienced search (more knowledge ...


5

Write a 200 line script. Then start improving it. Featuritis will have you out to 100 source files and several hundred KLOC in no time :)


5

"They dont't show you how to develop complex programs that actually do anything useful!" Without a definition of "useful" there's really not much we can do to get you on the "right" track. We don't know how you're failing, or what's going wrong. We can't tell what track you're on. Somehow, you have a notion in your head that you're not ...


5

I get asked this question all the time, e.g. how to get started. It's simple really. Here is a step by step. Come up with an idea. Sounds like you already have that. Simplify your idea to its basic core - something you think you might be able to tackle Layout the UI on a piece of paper or napkin, whatever. Try and layout the UI in your development ...


4

Create something small stuff. Don't mind, that your program will be the 1000th doing that. Some ideas: a clock (digital first, then analogue-look), automatic labirynth creator, directory structure displayer, mp3 album lister, etc. Choosing platform, tools are the part of the task.


3

Ok let's start with your idea for program X that does something useful and let's break it down: Use paper, mind-mapping, or diagramming software to layout the logical flow / flow(s) of the program. Since you are just starting out pick ONE of those items (preferably near the beginning) and break it down even further. Write your code for that first and use ...


3

You need real world experience!!. No book can teach you that! You have to learn how to read others code, how to maintain it, how to hate them ( both the code and the coder ) how to improve it, how to think you can do it better and a few months later shout out loud I'll kill who ever wrote this pieces of code!!! Only to find out in the source version control ...


3

I suspect one of the issues with Google and other engines from a programmer's perspective is that they're too dumb. Where's the escape character for instance so I can search for an embedded '.'? a.c, a\.c, and a.c all produce the same result - it's frustrating when you're wanting to search for a particular command switch or error code, etc. Advanced search ...


3

Yes, Googling should be taught, but it already is being taught in most K-12 school curriculums (maybe not necessarily in the best way, but that's a different matter). What's needed at the workplace is for it to be encouraged. Research skills are taught in the elementary curriculum here in Vancouver. It used to be library research back in my day, but they ...


3

Some advices. I'm not saying it's the only way, but it'd definitely give you something to start with. Learn a functional language. CLisp or Scheme will get you started rapidly. Learn system programming. Get your hands on a free Unix and start hacking. Don't overuse your CPU. The two first points are in direct relation with Spolky's article, where he ...


2

When I want to learn a new language, I usually try to implement some fractal graph. That way you'll have immediate feedback on if it works and it's very rewarding. And there's lots of ways you can improve a fractal. The naive implementation of mandelbrot is slow as hell. It's no very useful, but you learn a lot and it's beautiful to look at.


2

Try an open source project, see if you can fit in. Start by downloading the source, and see if you can pick up some tickets


2

In college, there was a class called programming practicum that basically taught this ramp. Early on you were given a UI for a basic shopping application, and had to code the backend, the last month was Tetris from scratch. I think around 50% of new students (not retaking the class) failed, because ramping from small to large is incredibly difficult. I'd ...


2

Programming is about problem solving and communication, not writing lots of code. Code is just a necessity, you should usually try to write less code, not more. If you don't know where to start, maybe you just don't have any problems! Look at Linux and other Unix-like systems: they all consist of many small applications that do only one thing, but do it ...



Only top voted, non community-wiki answers of a minimum length are eligible