It's a mistake to introduce new programmers to OOP before they understand the basics of breaking down problems and turning the solutions into code. Given how well I remember my classmates with little-to-none programming experience struggled with understanding pointers while not being able to write the simplest algorithms, I thought this was a no-brainer. Is it really a controversial opinion?
> Is it really a controversial opinion? I haven't heard anyone argue against it, but for a very long time every single curriculum out there started with either Java or C++, and had to talk about object quite early on (you can't print "hello world" in Java without it, and you can't use C++ streams either). And arguments I've heard about that practice as a proxy for your question, indicate that it is (or at least, was…
Hopefully more controversial programming opinions
31–40 of 103 posts
Re: Hopefully more controversial programming opinions
#32Earlier quoted context omitted.
3) That make's sense. For example... int *i; means "When you dereference i, you get an int."
When I see int a; I read "create an integer variable called a". int *i; means, "create a variable that when dereferenced, points to an integer". Makes sense once you understand it, but I can definitely understand how a beginner would find it confusing.
Now, algorithms can be difficult to understand and many of them use pointers... Do some people confuse the 2?
Re: Hopefully more controversial programming opinions
#33[update: I've got hold of some of the code. Here's a copy of one of the programmes http://pastie.org/4615158 ] I have an awesome story that i think I've told before, but I'll tell it again anyway :) My father-in-law is a pharmasist. back in the early 90s computers were starting to make their way into Pharmacy and the first few pharmacy sortware packages appeared. this increased with time, as you'd expect. At some poi…
Re: Hopefully more controversial programming opinions
#34> Computer science should only be offered as a minor. You can major in biology, minor in computer science. Major in art, minor in computer science. But you can't get a degree in CS. The problem is not that Universities produce poor CS majors. They don't. The problem is that everyone else expects that a CS major is going to be a good commercial developer. Some are, but that's just the odds. If you want to be a program…
I'm thinking to apply for MS next fall and as far as I get it, CS is more theory oriented (models, algos, languages, more math) and SE is more application oriented (management, testing, vcs etc.). While CE is more the electrical side of it.
I'm an electrical engg. but have worked in an IT enterprise for 2+ years(mostly in ITIL, admin stuff, a couple months on development) and now I wish to learn/work more on dev projects. So SE seems to be right choice, but all major companies are generally asking for a CS degree.
I think I might need to go through the basics briefly again, but should I go for CS (over SE) just because of that(and that most corps ask for CS)?
My aim is to score a job where I get to work on app/product development, I get to write code. What would you/HN suggest - which would be a more appropriate choice?
Re: Hopefully more controversial programming opinions
#35[update: I've got hold of some of the code. Here's a copy of one of the programmes http://pastie.org/4615158 ] I have an awesome story that i think I've told before, but I'll tell it again anyway :) My father-in-law is a pharmasist. back in the early 90s computers were starting to make their way into Pharmacy and the first few pharmacy sortware packages appeared. this increased with time, as you'd expect. At some poi…
This reminds me of a manager of mine who wrote a 10,000 line Perl script. He thought himself how to write Perl in a week. And then started coding. He wrote a script to automate a very tedious testing process so perfectly, we were able to reduce our test team by like 70% and test more precisely than before. It was fully procedural code. And it looked monstrous. Our architect challenged him that it won't workout. He ev…
- Make it work
- Make it right
- Make it fast
Re: Hopefully more controversial programming opinions
#36[update: I've got hold of some of the code. Here's a copy of one of the programmes http://pastie.org/4615158 ] I have an awesome story that i think I've told before, but I'll tell it again anyway :) My father-in-law is a pharmasist. back in the early 90s computers were starting to make their way into Pharmacy and the first few pharmacy sortware packages appeared. this increased with time, as you'd expect. At some poi…
This reminds me of a manager of mine who wrote a 10,000 line Perl script. He thought himself how to write Perl in a week. And then started coding. He wrote a script to automate a very tedious testing process so perfectly, we were able to reduce our test team by like 70% and test more precisely than before. It was fully procedural code. And it looked monstrous. Our architect challenged him that it won't workout. He ev…
Disclaimer: I like C/C++/Python.
Re: Hopefully more controversial programming opinions
#37[update: I've got hold of some of the code. Here's a copy of one of the programmes http://pastie.org/4615158 ] I have an awesome story that i think I've told before, but I'll tell it again anyway :) My father-in-law is a pharmasist. back in the early 90s computers were starting to make their way into Pharmacy and the first few pharmacy sortware packages appeared. this increased with time, as you'd expect. At some poi…
I would like to make a few points , This is only possible because your dad is the only one who has to deal with this program and also he only works on this one big complex thing which he knows really well .
Re: Hopefully more controversial programming opinions
#38Earlier quoted context omitted.
I wonder how much that initial version changed during the 20 years of maintenance. I find it hard to believe that someone was maintaining it for 20 years without improving the quality (of the code/design) and making it easier to maintain. Have you seen the code base of the initial version or of the version that is currently being used?
I've know my wife for the last 18 or 19 years and it was written before that, so I haven't seen the original. I have seen him debugging code in the evenings though. This consisted of printing out the entire programme (in the DBase sense a "programme" is a single file, but a programme in our sense would be a collection of dbase programmes) and the paper (dot matrix, so it's all connected) trailing all thruought the ho…
Re: Hopefully more controversial programming opinions
#39"You shouldn't be allowed to write a library for use by other people until you have ten years of programming under your belt. If you think you know better and ignore this rule, then one day you will come to realize the mental suffering that you have inflicted upon others, and you will have to live with that knowledge for the rest of your life." stunning.
I'm actually currently in process of writing a small library, but I have only 6 years of experience. I'm frightened.
(how's that for controversial?)
Re: Hopefully more controversial programming opinions
#40I would go farther in regard to the Computer Science point. CS programs should be burnt to the ground. And in their place we should build up three separate things. First, software trade schools that are actually good (e.g. not ITT). Second, for reals software engineering majors at colleges, that are heavy on things like practical programming, tools (version control, issue tracking, automated build systems), refactori…
The problem with software trade schools, even though you may not require a pure maths focus, I still expect people who program professionally to be good at maths. I would expect most programmers to analyse algorithms in a formal manner if they have to. And the people capable of doing maths at that level are not the people that traditionally go to trade schools.