Are you a programmer?

Recommended Videos

YouBecame

New member
May 2, 2010
480
0
0
I have worked as a software developer in C#.NET, ASP.NET (using C# code behind) and so on with the Microsoft visual Studio bundle. I also am pretty handy with SQL Server. Good fun, I want to get back in to that line of work (using forms/wpf rather than asp.net, since I don't like CSS at all)
 

Arehexes

New member
Jun 27, 2008
1,141
0
0
C, C++, Java, Python. Mostly what we study is fundamental aspects to apply to any language :p, I learned all my stuff mostly on my own.
 

The_Nomad

New member
May 22, 2009
8
0
0
basic HTML, Java, PhP, VB. Basic Stuff in allmost all of those courses after taking An Information Technology Course out at the community College for the last few years.
 

shadow skill

New member
Oct 12, 2007
2,850
0
0
CIB said:
shadow skill said:
These sorts of suggestions on the part of OODBMS advocates remind me of the suggestion by Python programmers that syntactic indentation is a good thing because it makes programs more readable. This is laughable when you realize that giving a character that is invisible to the human eye meaning is one of the dumbest things a person can do. The human brain doesn't care about white space the subconscious discards white space because our brain is interested in deriving meaning from context more so than structure.
While I do see your point and agree with you for the most part(How often has my code gone bad because I didn't de-indent right after a 2 pages long block?), I'd be careful not to generalize on this. Indentation *helps* recognize meaning, and once you are used to a specific indentation style, your brain will be able to recognize the meaning immediately without further indicators(as long as the blocks don't span more than one page ^^).

At this point, using indentation exclusively might indeed make your code more readable. I think there are quite many similar phenomenons in language. So, yes, it will be harder to understand the first time, just like for someone who's learning a foreign language elliptic sentences will be harder to understand, but once you have a grip on the language, it might actually be used to make the language more concise and elegant.

The first language I've mastered(simple game making language) uses syntactic indentation, and I think it's put to quite good use there.

(Code sample moved to paste-bin due to ontological.. er, technical problems. http://paste.pocoo.org/show/307430/ )

Imagine having to put an end-tag after every definition. Would look quite ugly, wouldn't it? For a language that mixes code and data, syntactic indentation seems to be an efficient and aesthetic solution, though languages like python are a whole different story.
Yes it is elegant for the compiler/interpreter or the person who has been socialized to understand the code. The brain unconsciously looks for characters not spaces or more correctly the lack of characters. This all happens before our conscious mind becomes aware of it. That is why we can spend some time looking for errors related to identifier casing long after we become used to the fact that a programming language is case sensitive.

The problem is that in the case of whitespace imparting meaning or casing schemes the conscious mind has to fight the unconscious mental processes that make reading possible in the first place. To be honest with you I would rather deal with the ugliness of having to explicitly end a statement then gamble that every possible statement/complete sentence in a language is going to be contextually clear enough that using whitespace to impart meaning is not going to become a problem.

My main concern with my previous remarks is not the machine or but the human beings who read code and the fact that the overwhelming majority of human beings have not been socialized to interpret formatting in the ways that your code snippet and Python require and instinctively parse characters rather than the lack of characters. While one could argue that it is fine once you learn how things work, such an argument does not answer the issue of why we bother to create abstractions like this in the first place.

Incidentally I think that part of the reason that Python became so popular in spite of its' ridiculous choice with respect to denoting blocks is that it was developed to teach people programming. The creator has therefore been able to socialize scores of people such that they do not even realize the stupidity of this particular design choice. Ironically when people first start programming they typically do not indent their code the reason being that the beginning student is most concerned with the characters on the screen the only thing that is meaningful to him or her. (Unless we are talking Python or Brainfuck.) Really the "elegance" of using whitespace is kind of like saying that it is more elegant to just type each sentence of this post on a new line instead of using a punctuation because humans eventually learn how to pickup on what is and is not a complete thought even without punctuation.
]I am reminded of a talk by one of the designers of Scheme where a few minutes in he states that mathematical notation is terrible because identifiers can only be one letter and the value of the identifier can change across an equation or the notation hides entire steps from the reader.

I'm sure mathematicians find their notation beautiful, but I can tell you from personal experience that I cannot understand any of it when I look up something related to programming that has a direct mathematical analogue. I always find myself wondering how they computed a specific value or what is the rule that governs a specific operation. But then again I am weird, I can eventually pick up a concept in a programming language after much cursing and head banging but math still confounds me.

I think we often get trapped in thinking about designs aesthetically instead of in a more pragmatic way because just like an architect, those of us who enjoy programming like to sit back and admire our work especially when it is completed. Take Lambdas/Closures for example. I prefer to write anything that needs to be iterated over using this technique when it is available in the language I happen to be using. I think that the for/foreach construct is ugly in comparison. Despite my own feelings towards the technique it is probably a better idea to use a traditional for loop in something like C# where Lambdas/Closures are new functionalities. (That said I'm still going to be using them where ever I can. :) )
 

Snork Maiden

Snork snork
Nov 25, 2009
1,071
0
0
I love C# more than anything, but like 99% of all work I do is in Objective-C. Well, at least for the last 7 or 8 months, anyway.

TheAmazingHobo said:
Was forced to learn Java. Which was an utter waste of time.

Otherwise: PROLOG, Python, C++ and Assembler.
Ohhhh man Prolog. I don't think I've ever hated anything more.

Zombie_Fish said:
Pretty much this, though minus the C# and Lua, add a bit of work with SQL (using Access which can't create stuff using SQL but can do queries in it, College won't let us use MySQL in case someone tries to hack the College database) and I'm also meant to be doing some work with PHP for dynamic websites, all for A2 Computing. Did a bit of HTML studying last year for the AS, but I can't remember most of that.
What was A-Level computing like, out of curiosity? I did Maths/F-Maths on the understanding that maths was essential for Comp Sci. As it turned out they had a (very intensive) compulsory maths course first year for people who hadn't done the right amount of maths which covered almost everything you'd need to know, which is a good job because "not done the right amount of maths" covered like 80-90% of people on my course. I'm coasting right now, but that's only because I did a year in industry last year - I honestly would probably be failing this year (final year) if I hadn't, and I dunno if taking more Maths over Computing was a bad decision. I'm still not a great programmer, but I like to think I'm at least good enough.

shadow skill said:
Despite my own feelings towards the technique it is probably a better idea to use a traditional for loop in something like C# where Lambdas/Closures are new functionalities. (That said I'm still going to be using them where ever I can. :) )
Why do you think you shouldn't use lambdas in C# simply because they're new functionality? A lot of C#s newest functionality is pretty good, and obviously the language really suffers if you were to take them out just because they're new.
 

Tharwen

Ep. VI: Return of the turret
May 7, 2009
9,145
0
41
Zombie_Fish said:
Tharwen said:
My bad. What I mean is that Access can't create databases if you've coded all the data in SQL, only the queries can be coded in SQL from what I understand. But I'm doing all of the data storage for my project in conventional file systems, so what do I know?

It looks like you're applying to none of the Universities I'm applying to, so I wouldn't be able to stalk you anyway. Oh, and for the record:

[ul][li]Manchester[/li]
[li]Reading[/li]
[li]Bristol[/li]
[li]York[/li]
[li]Leicester[/li][/ul]

I currently have offers from Manchester, Reading and Leicester and will be having interviews with York and Bristol in late January -- those two interviews would've been sooner, but Bristol's only earlier date was a day when I had booked to visit Reading anyway and York cancelled theirs due to snow.
Congratulations on so many responses!

I just seem to keep getting emails advertising the ones I haven't had official decisions from yet...
 

shadow skill

New member
Oct 12, 2007
2,850
0
0
Snork Maiden said:
I love C# more than anything, but like 99% of all work I do is in Objective-C. Well, at least for the last 7 or 8 months, anyway.

TheAmazingHobo said:
Was forced to learn Java. Which was an utter waste of time.

Otherwise: PROLOG, Python, C++ and Assembler.
Ohhhh man Prolog. I don't think I've ever hated anything more.

Zombie_Fish said:
Pretty much this, though minus the C# and Lua, add a bit of work with SQL (using Access which can't create stuff using SQL but can do queries in it, College won't let us use MySQL in case someone tries to hack the College database) and I'm also meant to be doing some work with PHP for dynamic websites, all for A2 Computing. Did a bit of HTML studying last year for the AS, but I can't remember most of that.
What was A-Level computing like, out of curiosity? I did Maths/F-Maths on the understanding that maths was essential for Comp Sci. As it turned out they had a (very intensive) compulsory maths course first year for people who hadn't done the right amount of maths which covered almost everything you'd need to know, which is a good job because "not done the right amount of maths" covered like 80-90% of people on my course. I'm coasting right now, but that's only because I did a year in industry last year - I honestly would probably be failing this year (final year) if I hadn't, and I dunno if taking more Maths over Computing was a bad decision. I'm still not a great programmer, but I like to think I'm at least good enough.

shadow skill said:
Despite my own feelings towards the technique it is probably a better idea to use a traditional for loop in something like C# where Lambdas/Closures are new functionalities. (That said I'm still going to be using them where ever I can. :) )
Why do you think you shouldn't use lambdas in C# simply because they're new functionality? A lot of C#s newest functionality is pretty good, and obviously the language really suffers if you were to take them out just because they're new.
The reason is simple, maintainability by someone who is not me. While a lambda is not difficult to comprehend, if you start using every "fancy trick" you end up with Perl that might look like
@P=split//,".URRUU\c8R";@d=split//,"\nrekcah xinU / lreP rehtona tsuJ";sub p{
@p{"r$p","u$p"}=(P,P);pipe"r$p","u$p";++$p;($q*=2)+=$f=!fork;map{$P=$P[$f^ord
($p{$_})&6];$p{$_}=/ ^$P/ix?$P:close$_}keys%p}p;p;p;p;p;map{$p{$_}=~/^[P.]/&&
close$_}%p;wait until$?;map{/^r/&&<$_>}%p;$_=$d[$q];sleep rand(2)if/\S/;print
In other words Satan spawn.
 

Zombie_Fish

Opiner of Mottos
Mar 20, 2009
4,584
0
0
Snork Maiden said:
What was A-Level computing like, out of curiosity?
It isn't too bad, though the theory that we have to know for the A2 exam in June is a bit daunting as it covers about 225 pages of a book with A4 pages which is spread across a lot of subjects which are generally related to Computing, though some of it's definitely more relevant to Computer Science than other parts.

The AS has two exams, a January one which covers topics from peripherals (most annoying topic ever with how much of it you have to remember) and computer architecture to how the Internet works and legal and ethical computing issues (copyright, data protection etc.), and a June one which covers topics like programming using console applications and HTML programming, doing sums in binary, logic gates and boolean algebra, the system life cycle and other things that I've forgotten since.

The A2 consists of one big exam at the end of the year and a project. The project is to create a program that can do whatever you want it to do as long as you find some way of using it to store records or files, and you have to follow it through the system life cycle as you design, test and review your software. And then you have an exam in June that covers a lot of theory, from recursion to databases to communications and networking to trees and graphs to coding in php and sql to Operating Systems and many other things we've yet to have been taught. Programming-wise it varies on how useful it is depending on what you're doing for your project, but the sql and php stuff looks somewhat interesting to mess around with.

A lot of universities nowadays recognise from what I understand that some people haven't studied programming languages whatsoever, so choosing Further Maths over Computing proabably wasn't a bad idea anyway. One of the Universities I'm applying to in fact decides to teach you Systems Development in the first term by making you work in a group to design a board game instead of doing any programming whatsoever.

Tharwen said:
Congratulations on so many responses!

I just seem to keep getting emails advertising the ones I haven't had official decisions from yet...
Thanks. I sent my stuff in late October which is why I have all this so soon.

Trust me, it's worse when you're getting ads from universities you're not even applying to. I keep on getting letters from Bedfordshire Uni asking if I am interested in studying there. I wouldn't mind if I was actually applying there but the only reason they have my address is because I asked for a bloody prospectus back when I was taking prospectuses from pretty much any university which did Computer Science as I had no idea which ones to pick. All they're doing now is making it even more tempting to phone them up and say that I'm not applying there.
 

Willis_D

New member
May 27, 2009
404
0
0
Learning Java and Arm Assembly language in first year of computer science. I am not really liking either, as for Java, we have had an incredibly stupid lecturer, and I just do not really get Arm for some reason.
 

guardian001

New member
Oct 20, 2008
519
0
0
Not professionally. I took CompSci in High school, but I mostly do it as a hobby. I've used both Java and C/++.
 

Metal Brother

New member
Jan 4, 2010
535
0
0
I've been a professional software developer for around 20 years. I worked in COBOL, Fortran and Assembler back in the day, used C, C++, VB, Delphi and Java, but once .NET was unleashed on the world back in 2000 I've coded almost exclusively in C# and a little VB.NET and F#. But my true passion (my "happy place," if you will) is in the database, and have done a ton of work in T-SQL, PL/SQL and other SQL dialects.

If I were ever stranded on a desert island and could only have one programming language with me forever and ever, I would want that language to be T-SQL.
 

Metal Brother

New member
Jan 4, 2010
535
0
0
smithy_2045 said:
Programming sucks, and was the main reason I stopped doing computer science.
Opinions may differ here. Perhaps if we were to replace "sucks" with "not for you" here we may be able to agree.