How hard is it to l...
 

Subscribe now and choose from over 30 free gifts worth up to £49 - Plus get £25 to spend in our shop

[Closed] How hard is it to learn computer programming ?

136 Posts
48 Users
0 Reactions
376 Views
Posts: 0
Free Member
Topic starter
 

I used to be fairly good with Spectrum Basic, although I never got the hang of Machine Code.
I know nothing about modern programming. I've heard names like C+ and Perl, but wouldn't know where to start.
Thinking about DrDomRob's idea here, http://www.singletrackworld.com/forum/topic/monitoring-components I'd be interested in collaborating if possible.

Is there a sort of Windows Basic with simple "If x<y Then Goto z" commands or would I be better off just learning how to do it on a spreadsheet ?


 
Posted : 22/02/2011 6:14 pm
Posts: 79
Free Member
 

Visual Basic is similar to that idea, pretty simple to pick up. I'm using it a fair bit these days to do a lot in Excel


 
Posted : 22/02/2011 6:16 pm
Posts: 0
Free Member
 

Why not write some image recognition AI software which has a large learning set, so everyone takes a picture of their components and adds it to a database, when the component finally breaks, they add this to the learning set. So the app can take can take a pic of a component, compare it to its learning set and predict how long it will be before that component fails.


 
Posted : 22/02/2011 6:20 pm
 oyon
Posts: 0
Free Member
 

Yes there is. Check out python...

1. Free!
2. Interpreted; so no compiling.
3. Easy syntax and very powerful high level language.

On the negatives, it's more a scripting type language so GUIs etc not straightforward immediately.

If you want to dive into GUIs immediately, Microsoft do a free version of visual studio but not sure how good that is ( "Express" version?)

EDIT: Sorry didn't read properly with your link; python not good if you need lots of GUI interaction beyond simple command line entry.


 
Posted : 22/02/2011 6:22 pm
Posts: 5938
Free Member
 

How hard is it to learn computer programming ?

Fairly easy, but to become a good programmer is much harder.

I speak from experience, I'm a programmer, but I'm not very good! (as from monday i will be a functional systems designer)


 
Posted : 22/02/2011 6:25 pm
Posts: 7983
Free Member
 

Everything is object oriented now, so for what you're suggesting, use Excel or learn an appropriate language from scratch. "Go to" doesn't exist any more.

http://xkcd.com/292/

If you're prepared to commit the time, then start with this and work your way through the tutorials. Do all of them, don't try to launch into your own project straight away because it WILL go wrong if the last thing you used was Basic.

And try to avoid Visual Basic, and jump straight to C-sharp (****ing Apple keyboards with no hash symbol) if you can. The Express editions are all free and top quality.


 
Posted : 22/02/2011 6:25 pm
Posts: 5938
Free Member
 

Flaperon

if (mac = TRUE) {
alt+3 = #
}

EDIT : see told you I'm crap! should be

if (TRUE == mac)


 
Posted : 22/02/2011 6:28 pm
Posts: 0
Free Member
 

> 10 PRINT "Depends on what you want to learn"
> 20 PRINT "And what you want to do with it"
> 30 GOTO 10

> RUN


 
Posted : 22/02/2011 6:31 pm
Posts: 8933
Full Member
 

Been looking for a way of putting an # in code that does not involve copying another one since I bought my Mac.

Now my Arduino programming will be much easier!

C# is the way to do it... Much easier than perl anyway


 
Posted : 22/02/2011 6:33 pm
 nbt
Posts: 12403
Full Member
 

there's an awful lot of bollocks on this thread. I've been doing it for a living for 15 years now and I'm alright, but it's not easy, it's not all object oriented, but you can pick it up as a hobby


 
Posted : 22/02/2011 6:34 pm
Posts: 0
Free Member
 

Python is a good place to start. There are several good GUI toolkits if you want to build a GUI for your application.

Or Java.

Either way, consider doing everything using the Eclipse IDE.


 
Posted : 22/02/2011 6:39 pm
Posts: 6382
Free Member
 

nbt +1.

This is a job for excel- anything more is overkill and likely to lead to project failure if it's used as a learning exercise 🙂

I can't really see anything on either thread suggesting that anybody knows what they want the application to [b]do[/b]- that's your biggest problem


 
Posted : 22/02/2011 6:41 pm
Posts: 27
Free Member
 

As others have said, really depends on what you want to achieve and to some extent on what platform ie. Windows, Unix/Linux etc.

Perl/Python/TCL are general purpose scripting languages which will will run on windows and unix. They all have a GUI capability (usually some variant of TK windowing which originally came with TCL). Scripting languages do not compling ie. you write the program and then run it without having to compile the code. Easy to learn and can cover a wide range of solutions.

There are also specific web type languages such as PHP/Javascript/Ruby. Again scripting languages but more specifically dealing with HTTP etc.

Compiled languages - C/C++/Java/C# ( i believe is compiled). Compiled languages are generally harder to learn IMO. They generally are more efficient in terms of run time and resources used but from your source code ie. the code you write you then need to run it through a compiler to generate code that can be run by the OS.

So if you are simply wanting to sort data etc. then perl/python would be a good choice. If you are looking to write a full blown application perhaps one of the compiled languages although apps have been written in scripting languages.

As someone else said, if you are going to learn a language it's pretty much standard these days for it to be OOB (Object orientated). Python is by default. Perl/TCL have extensions.

C++ is. Java is. C# don't know but would imagine it is.


 
Posted : 22/02/2011 6:41 pm
Posts: 8570
Free Member
 

Dark BAsic for gaming.

Can someone rewrite Worms+ for me 🙂 With extras weapons I want 🙂

Please 🙂

and

Oids!


 
Posted : 22/02/2011 6:44 pm
Posts: 0
Free Member
Topic starter
 

See, I understood McHamish's post. 😀
The thing is, I could probably do this in Spectrum Basic.
It wouldn't be very tidy, but it would do the job.

10 If bike = lynskey And rearwheel = rohloffmavic Then Let totaldistance = totaldistance + ride, Let lynskeydistance = lynskeydistance + ride, Let rohloffmavicdistance = rohloffmavicdistance + ride

20 If bike = Lynskey And rearwheel = rohloffdtswiss etc.

So,would it be easier to learn how to do it on a spreadsheet in Open Office then ?


 
Posted : 22/02/2011 6:46 pm
Posts: 0
Free Member
 

if midlandstrailquestgraham.wantstoget != 'very good' then
display.print 'not hard'
else
display.print 'very hard'
endif


 
Posted : 22/02/2011 6:53 pm
Posts: 2
Free Member
 

programmers don't program any more, they just rummage around in the module bin. 😉


 
Posted : 22/02/2011 6:57 pm
Posts: 0
Free Member
 

How hard is it to learn computer programming ?

Nigh on impossible. No room for any more programmers. 😉

Seriously though, I know I will get some trouble with the others nerds but if I were you I would use Access. You have data right there, all the controls for building a GUI available and it will be easy to learn to start with. You can scale up to pretty much as complex as you like. You can also transplant to proper systems quite easily if you get really into it.

For this project, I would start with designing the tables that you want to use and learning a bit about data, that will be the foundations of your system, get that right and the rest will come easily. Good luck!


 
Posted : 22/02/2011 6:58 pm
Posts: 0
Free Member
 

Ditto Access would be good place to start.
Or if you want to be web based php and mysql. But you could always rebuild you Access proof of concept for the web at a later stage.


 
Posted : 22/02/2011 7:01 pm
Posts: 3292
Full Member
 

doing it 20+ years and still learning

Just like all the other threads on here, everyone has recommended what they know and dismissed everything else, so you get a hundred different answers.

Short answer is that nowadays you can do anything with pretty much any language so it doesn't matter. All will have differing learning curves, be frustrating as hell at some point, but will ultimately be more than adequate for a hobby project.

Ruby FTW by the way


 
Posted : 22/02/2011 7:23 pm
Posts: 0
Free Member
 

Sorry I don't want to sound snotty, but I take a little issue with these remarks...

"everyone has recommended what they know and dismissed everything else"

Err no. In addition to Java and little Python, I also know C, C++ Perl, Ada and a smattering of VB. But I didn't recommend them for noobs.

"you can do anything with pretty much any language so it doesn't matter"

Really no. For example, many languages are not object oriented which may make them awkward to scale up, some lack GUI toolkits, other have no generics, some are purely functional (stateless), some are type-safe, some aren't type safe, some are space efficient, some are space hungry, some only work on Windows (urgh!), etc etc

All languages have strong and weak points. You pick the right tool for the job in hand. Now given that the Graham seems to working with Excel on Windows, I change my mind: VB would seem to be most appropriate.

Sorry again for sounding snotty. 🙂


 
Posted : 22/02/2011 7:35 pm
Posts: 77689
Free Member
 

My background's programming, but I turned my back on it a long time ago. As a sysadmin / support geek though, it's a good bowstring to have in a pinch.

"How hard is programming" is perhaps akin to "how hard is riding a bike?" Do you want to stay upright long enough to get to the corner shop on a £100 special from Go Outdoors, or do you want to be Danny MacAskill?

I'd respectfully suggest that programming as a mature career change is something you'd want to approach with caution. There are websites devoted to people who do this ([url= http://thedailywtf.com/ ]The Daily WTF[/url] is as good as any).

As a hobby, though, the world's your mollusc. For a spot of light webdev, HTML is about as easy as it gets, and then you can segue into JavaScript and such. Python is great on a number of levels, it's relatively easy and powerful. Java is ostensibly C++ with bells off. Perl is something that I really should know better. All have strengths, weaknesses, appropriate applications and learning curves. Tell us a bit more about what you're wanting to do, maybe?


 
Posted : 22/02/2011 7:56 pm
Posts: 0
Free Member
 

recommended what they know and dismissed everything else

I haven't dismissed anything, just made a recommendation. I do know Access but haven't worked on it in 10 years, I now use anything I need to from c to c#.

Ruby balls. 😉


 
Posted : 22/02/2011 8:00 pm
Posts: 12079
Full Member
 

Excel / Access if you want a quick result.

PHP / Javascript / HTML if you want to play on the web

Java if you want to write the web

C/C++ if you want to spend your afternoons hunting pointers to null.

Fortran if you want to tell other programmers how it all used to be fields round here.

Cobol if you want to remain employable up to and beyond the day you retire.

But Lisp FTW
[img] [/img]

(Caveat: I've used all these and more. Except a Cobol project. That one I managed. Lisp is just a hobby, though.)


 
Posted : 22/02/2011 8:05 pm
Posts: 0
Free Member
 

[i]Everything is object oriented now, so for what you're suggesting, use Excel or learn an appropriate language from scratch. "Go to" doesn't exist any more.[/i]

if only 🙄

I've been doing it for a living for 22 years now & I'm still learning (a bit). Been in the same job for 10 years & no need to learn a new language from scratch - not yet anyway...

We use SB+ (system builder+) and DataBasic on a Universe database, sitting on an HP-UX platform.
Still with me?

Universe is a multidimensional database following the PICK model; not unlike your typical relational database, but then again, totally unlike it at the same time

DataBasic is, as its name suggests, a version of Basic. And yes there are still "GOTO" commands, but we do our very best to avoid them where possible

have I lost you yet?

McHamish - at what point do you stop the loop? That will go on forever


 
Posted : 22/02/2011 8:06 pm
Posts: 0
Full Member
 

If you want in at the deep end head for whitespace. Wiki it.


 
Posted : 22/02/2011 8:18 pm
Posts: 0
Free Member
 

Python it quite good to get to grips with the basics. You can start of with similar constructions as BASIC and move onto object orientated later on.

There are also a number of programming 'languages' designed for kids that teach the basics of programming that might be of interest. Don't laugh, some of the stuff they produce is beyond anything I could have done at that age.

Scratch is for making interactive stories, games and music projects. You drag and drop 'repeat', 'if-then-else' etc. blocks to build sequences
[url= http://scratch.mit.edu ]Scratch[/url]

Another is [url= http://yoyogames.com/gamemaker ]gamemaker[/url]


 
Posted : 22/02/2011 8:50 pm
Posts: 8
Free Member
 

Been looking for a way of putting an # in code that does not involve copying another one since I bought my Mac.

Bah. Alt-3.

# see?

EDIT: Objective C is where it's at 😉


 
Posted : 22/02/2011 8:53 pm
Posts: 8328
Full Member
 

Why don't you do something useful and learn plumbing instead and get some running water in your house so you no longer have to buy ready washed potatoes just so you can do the washing up! 🙂


 
Posted : 22/02/2011 8:57 pm
Posts: 91096
Free Member
 

These days programming has diversified. It all depends on what you want to do.

For simple applications like this one, you can't go far wrong with MS Office based stuff. Only problem is that the VB you have to learn is an absolutely awful language and teaches you so many bad habits it doesn't transfer well to proper languages. But, once you get your head round it, being able to use Access and Excel as a base for your applications is massively useful.

It's like saying you want to make buildings. Building skills vary from putting together a shed to building a proper house to designing a skyscraper to Frank Lloyd Wright to the Petronas Tower.


 
Posted : 22/02/2011 9:02 pm
Posts: 0
Free Member
 

When you can all code a c compiler in [url= http://en.wikipedia.org/wiki/Brain**** ]this[/url], come back and talk to me. 😉


 
Posted : 22/02/2011 9:03 pm
Posts: 0
Free Member
 

It's like saying you want to make buildings. Building skills vary from putting together a shed to building a proper house to designing a skyscraper to Frank Lloyd Wright to the Petronas Tower.

Or put another way...

Most software today is very much like an Egyptian pyramid with millions of bricks piled on top of each other, with no structural integrity, but just done by brute force and thousands of slaves.
(Alan Kay)


 
Posted : 22/02/2011 9:06 pm
Posts: 0
Free Member
 

assembler - its easy and its fast and it bypass's all this new fangled front end stuff that makes it all far more complex than it really is by loading a whole load of 'concepts'.

One fetch execute cycle to rule them all.

anyway back in the real world, any programmer is only as good as his search tools to find what someone else did to fix his problem and the cut and paste.

So - did someone mention you can get a free version of Express C# ?
links please.


 
Posted : 22/02/2011 9:11 pm
Posts: 19
Free Member
 

[url= http://www.microsoft.com/visualstudio/en-us/products/2010-editions/express ]Visual Studio 2010 Express[/url]


 
Posted : 22/02/2011 9:21 pm
Posts: 3292
Full Member
 

Why don't you do something useful and learn plumbing instead

Do plumbers list all the tools they know how to use and/or have heated arguments about them?

Does it matter if the end result works the same?


 
Posted : 22/02/2011 9:28 pm
Posts: 0
Free Member
 

If you're serious about BEING a programmer, find a mentor to learn the right techniques and approaches from. Learning languages is one thing, actually being a decent developer is a totally different thing. We have probably 20 developers at work and I would consider 7-8 good and most of the rest will never be good despite how long they spend working at it.


 
Posted : 22/02/2011 9:28 pm
Posts: 85
Free Member
 

I'd suggest coming up with a goal for your programming first, then ask for advice on what would be a suitable language & tool set to use. Splitting the problem up into smaller, more manageable chunks is a good part of programming 😉


 
Posted : 22/02/2011 9:33 pm
Posts: 145
Free Member
 

Not sure if anyone has said this but a lot of big companies outsource their IT dev offshore now. British developers generally cost at least 2X what it costs in India these days. I used to be a developer for my company. Now I am the middle manager speccing the product for the offshore team to code...

It would make more sense to get into being a Business Analyst or Project manager IMHO


 
Posted : 22/02/2011 9:40 pm
Posts: 0
Free Member
 

00000111111100111001010101010101010010101101010101010101101010010110101010110010101010101011010100110101010101001001011010101010101010101010101010101010011001100101101001101010100101010110101001011010010110101001011001100101010101010101010101010101011010101010100100110101001101001010101010110011001101010101010010101101010101010101010101010100101010101010101011010100101010110101010101010101010110101010101010101101010101010101001010101100110010101101010100101010110100110100101101010101010001011001010101101001010

Easy Peasy


 
Posted : 22/02/2011 9:43 pm
Posts: 13594
Free Member
 

You can right very elegant, structured and object orientated code in VBA / VB - it's moved on miles from the original Basic versions. You can also hack horrible rubbish - but then you can do that in any language if you want to....


 
Posted : 22/02/2011 9:53 pm
Posts: 7983
Free Member
 

Update:

Aha! It's Ctrl-Alt-3 when running Windows through Bootcamp.

For those copying-and-pasting, have a few spare ones: #####


 
Posted : 22/02/2011 10:09 pm
Posts: 0
Free Member
 

I've just started going down the web route myself right now, I've known html/css for quite a while..

I've a basic plan, I'm currently figuring out how to do useful stuff with Javascript and understand it so that I actually know what's going on when I start using the frameworks like jquery or whatnot, then it's onto ajax and from there i'm guessing that will lead me into the to world of php/mysql, anyhow that's my basic idea, which will no doubt change as I learn more.

Anyhow for the OP if it's web stuff you fancy this is a good site.

http://w3schools.com/


 
Posted : 22/02/2011 10:11 pm
Posts: 0
Free Member
 

Compiled languages are generally harder to learn IMO

I think not.

JavaScript is weakly typed which can make it harder, C# is not and is a snap on a basic level, for example.

Visual Web Developer / SQL Express / SQL Server Management Studio are all free and fairly intuitive and can be used to build some pretty good websites, if web programming is what you are after. Access is a dreadful thing to start with if you want to be a web programmer as it is useless as a web database...

Horses for courses:

ASP.Net for web programming (and all the PHP / MySql guys will be along to flame me now!) - check out all the server controls in ASP.Net as a way to make your life easier, for example: never saw them in PHP but I am well out of date on PHP now...

JavaScript, JQuery and stuff for purely client side web programming... Never VBScript...

C# / Winforms stuff for applications development I guess.

(VB.Net is also available, but is just not as elegant as life in curly braces...) 😆


 
Posted : 22/02/2011 10:30 pm
Posts: 4954
Free Member
 

Of course any logic sequence can be created with enough NOR statements or alternatively enough NAND statements. So that's all you really need.


 
Posted : 22/02/2011 10:31 pm
Posts: 0
Free Member
 

Depends on what you want to accomplish - some people learn programming to overcome a task, others do it for a challenge with no real objective ("I will learn how to programme a scientific calculator" "I will learn how to build an e-commerce shopping cart website").

I fall into the first category, as I work in IT.

Lost count of the number of different languages I have been required to dabble in (not in the slightest bit an expert in any of them - but enough basic knowledge to get the ball rolling with a project)

Currently doing some VBScript / WSH stuff, on a Win 2k3/XP network.


 
Posted : 22/02/2011 11:44 pm
Posts: 349
Free Member
 

When you can all code a c compiler in this, come back and talk to me.

Yeah I tried learning that, I gave up when I realised that it probably wouldn't be wise to put on a cv anyway....

Also, just learn lolcode, it's pro.


 
Posted : 23/02/2011 12:37 am
Posts: 91096
Free Member
 

Most software today is very much like an Egyptian pyramid with millions of bricks piled on top of each other

Yeah cept the pyramids have been standing for thousands of years with hardly any maintenance, and they don't fall over 🙂

Not sure if anyone has said this but a lot of big companies outsource their IT dev offshore now

True, but there's still a market for good local IT people. Outsourcing is a real headache. And that largely applies ime to the IT parts of big companies that do other stuff like insurance etc.

Does it matter if the end result works the same?

Ah, spoken like a true manager 🙂 Imagine if plumbing meant doing the plumbing for an entire development, say, with restaurants, offices, houses and factories; imagine that they needed ten different kinds of water that all needed to be converted. Then drag in anyone off the street who can recognise a pipe wrench and tell them to get on with it. There are no plans apart from 'we need water in the buildings', no-one can agree on which type or how much, and there are NO bulding regulations so each plumber is just hacking together a load of pipes willy nilly, and the good plumbers are going around patching the leaks and dangerous mistakes of the others. Then come back in two weeks and ask why the hell there's no water on, and could you please get a move on or you're all fired. Eventually after a year there's water on in most of the buildings. Good solution, or not? 🙂

This is what most big IT projects are like.

However I don't think the OP wanted to be a professional developer 🙂


 
Posted : 23/02/2011 8:51 am
Posts: 0
Free Member
 

This is a job for excel- anything more is overkill and likely to lead to project failure if it's used as a learning exercise

Surely you mean anything using Excel is likely to lead to project failure...

There are two issues - one is deciding which language to use, and the other is deciding how to learn to program. The former is less important than the latter.

I learnt C from K&R and some other books originating from the AT&T guys and am eternally grateful that I did, as I find the quality of programming books for the Windows platform to be pretty poor. In the old days Prentice Hall books used to rule whereas today Addison Wesley books seem to be the most consistent source.

Stoustrup has a well-rated book on learning to program, which happens to use C++:

http://www.amazon.co.uk/Programming-Principles-Practice-Developers-Library/dp/0321543726/ref=sr_1_1?ie=UTF8&qid=1298451777&sr=8-1

that would give you a solid foundation and then picking up one of the mickey-mouse languages like C# would be simple.

If you want to learn using something else I would go for Java rather than C#, there are too many hacky features in C# whereas at least in Java you are forced to follow a 'purer' programming model.

And avoid ANY book by Herbert Schildt...

25+ years here 🙂


 
Posted : 23/02/2011 9:15 am
Posts: 91096
Free Member
 

I learnt C from K&R

The world is a very different place now!

If someone wants to knock up a few simple apps, I would not recommend heavyweight programming theory tbh.


 
Posted : 23/02/2011 9:29 am
Posts: 251
Full Member
 

My view:

Find something that's open source that does something roughly near what you want to achieve.

Use that as a start point and add something.

Easiest way to learn to code is to use someone elses (well written) code as a start point.

It's far easier, for example to add a control or whatever to a page that already exists and can talk to a db than have to start worrying about connection strings and who knows what before you can even do the most mundane of tasks.

As above - the actual language you use is probably less important than the availability of good tools and a wide user base.

I'd personally recommend the Microsoft 'Express' family of products if you can find an app to use as a start point.


 
Posted : 23/02/2011 9:36 am
Posts: 3292
Full Member
 

Ah, spoken like a true manager

Although I do know lots of languages, I don't know powerpoint or excel 🙂

if plumbing meant doing the plumbing for an entire development, say, with restaurants, offices,

As you say, he's not aiming to do it for a living, just a hobby project, for one person, so maintenance and all that jazz is not as important as just getting it done. KISS.


HAI
CAN HAS STDIO?
IM IN YR LOOP UPPIN YR VAR TIL BOTH SAEM VAR AN 10
VISIBLE SUM OF VAR AN 1
IM OUTTA YR LOOP
KTHXBYE

that is class


 
Posted : 23/02/2011 9:41 am
Posts: 0
Free Member
 

The world is a very different place now!

rubbish - there are still heaps and stacks, parameters are still pushed onto the stack, return addresses are pushed onto the stack and popped from it, etc.

Loads of 'features' in C# are just syntactic sugar that is rewritten into simpler code in the same manner that early C++ compilers would emit C, or Ratfor compilers would emit Fortran.


 
Posted : 23/02/2011 9:45 am
Posts: 6382
Free Member
 

Surely you mean anything using Excel is likely to lead to project failure...

There are two issues - one is deciding which language to use, and the other is deciding how to learn to program. The former is less important than the latter.

Aah. here we are, the big failing with IT projects- misunderstanding, poor communication, failure to listen to the user, uncertain requirements.

The op said:

Thinking about DrDomRob's idea here, http://www.singletrackworld.com/forum/topic/monitoring-components I'd be interested in collaborating if possible.

Is there a sort of Windows Basic with simple "If x<y Then Goto z" commands or would I be better off just learning how to do it on a spreadsheet ?

IMO, for what the op asked for, a spreadsheet is most suitable.

Anything else is just gilding the lily and more likely to lead to abandonment. 25+ years of experience should tell you that the requirements drive out the solution. 😉

(retired now, but started commercially on fortran in 1981 😕 )


 
Posted : 23/02/2011 9:46 am
Posts: 0
Free Member
 

How hard is it to learn computer programming

Dicking around in a spreadsheet is not going to meet the goal outlined in the title of this thread.

MS have done an incredibly poor job of developing Excel as a programming platform - just go and work for an investment bank for a while and witness the massive maintenance burden that they have trying to make Excel based apps reliable.


 
Posted : 23/02/2011 9:54 am
Posts: 91096
Free Member
 

rubbish - there are still heaps and stacks, parameters are still pushed onto the stack, return addresses are pushed onto the stack and popped from it, etc.

That's correct.

However the programming world IS a very different place now than it was 25 years ago, you can't really argue with that!


 
Posted : 23/02/2011 9:56 am
 nbt
Posts: 12403
Full Member
 

Dicking around in a spreadsheet is not going to meet the goal outlined in the title of this thread.

The title of this thread doesn't necessarily relate to the aim stated in the OP. This is one of the major problems in IT projects, the person paying doesn't always know exactly what they want, but they want it [i]now[/i] so you just have to crack on with coding and change bits when they make up their minds 😕


 
Posted : 23/02/2011 9:59 am
Posts: 6382
Free Member
 

MS have done an incredibly poor job of developing Excel as a programming platform - just go and work for an investment bank for a while and witness the massive maintenance burden that they have trying to make Excel based apps reliable.

ime, the reason for this is usually that stuff in excel is written by the business, not IT. The first that IT sees of it is when a user turns up requesting enhancements or support so it works as they intended... 🙂


 
Posted : 23/02/2011 10:05 am
Posts: 106
Free Member
 

However the programming world IS a very different place now than it was 25 years ago, you can't really argue with that!

Yup.

Right now I'm writing a command-line assembler/linker in C, which I'll be using next month for production DSP assembly code 🙂


 
Posted : 23/02/2011 10:06 am
Posts: 0
Free Member
 

yeah - 30% of computer projects fail, or so I hear as I haven't been in any of them.

That's why agile/TDD/XP are the right way to go, and waterfall is not.


 
Posted : 23/02/2011 10:07 am
Posts: 91096
Free Member
 

This is one of the major problems in IT projects

Yep, along with geeks getting aeriated about 'programming principles' when what's needed is a good quick solution that's appropriate 😉

yeah - 30% of computer projects fail, or so I hear as I haven't been in any of them.

Well I've never been in one that got canned but boy have I been in some disasters!

Right now I'm writing a command-line assembler/linker in C, which I'll be using next month for production DSP assembly code

And I'm working with Enterprise Java 🙂


 
Posted : 23/02/2011 10:20 am
Posts: 0
Free Member
 

That's why agile/TDD/XP are the right way to go, and waterfall is not.

Really depends on the type of project and there is no one size fits all.

I really like TDD (Test Driven Development) biggest problem is getting project managers to buy into it.


 
Posted : 23/02/2011 10:20 am
Posts: 0
Free Member
 

Yep, along with geeks getting aeriated about 'programming principles' when what's needed is a good quick solution that's appropriate

I agree you need to be pragmatic sometimes and the quick and dirty solution is the right thing. Problem is that later the business comes back and moans at you because you now cant maintain/scale that solution !!!

And I'm working with Enterprise Java

So your not a proper software engineer then 😀


 
Posted : 23/02/2011 10:24 am
Posts: 91096
Free Member
 

I agree you need to be pragmatic sometimes and the quick and dirty solution is the right thing. Problem is that later the business comes back and moans at you because you now cant maintain/scale that solution !!!

I'm not advocating quick and dirty, just tools for the job...

So your not a proper software engineer then

Just cos I don't need to use malloc...

Who do they come to when they can't figure out why XA transactions aren't being propagated across components and no-one else can figure it out? 🙂


 
Posted : 23/02/2011 10:31 am
Posts: 251
Full Member
 

[i]Who do they come to when they can't figure out why XA transactions aren't being propagated across components and no-one else can figure it out?[/i]

[img] [/img]

?


 
Posted : 23/02/2011 10:34 am
Posts: 4954
Free Member
 

bazzer - Member
quick and dirty solution is the right thing.

Reminds me of my third wife. Both in life and in death.


 
Posted : 23/02/2011 10:35 am
Posts: 0
Free Member
 

Yep, along with geeks getting aeriated about 'programming principles' when what's needed is a good quick solution that's appropriate

Very funny - I am interested in providing a solution to the problem and then moving on and not being plagued with having to maintain something that I slapped together - I would rather get on to solve the next problem.

TDD styles, or those close to, appear to be the fastest way to get robust software out and also allow one to concentrate on solving the problem rather than fixating on churning out 'pure' code.

I like the fact that I can make a small change and then run several hundred messages, for example, through my system in a couple of seconds to check its integrity. I also like the fact that if anyone else makes a change to the code base I am assured that they haven't broken my stuff because these same tests are run by the build system. I like the fact that a team can work in a continuous integration manner so they are faced with a potential nightmare at the end of a project when everything gets merged together.

If you look around in big institutions you will find that an awful lot of programming resources are taken up keeping flaky ('strategic') solutions that were slapped together quickly running. It all stems from cowboy developers who eschew decent programming principles because they are above them and know better...

Think of it this way - say you took your car in for a service and the garage then phoned you up to say it would be ready early at 3pm - so you went to pick it up and gave them an extra £100 for having it ready on time. You then drive it down the road and it conks out after 100metres. You call garage and they come out and fiddle around, and it starts - you give them another £50 for doing a good job - you then drive another 100metres down the road before it conks out again. Another call, out they come and get it started, you give them £50 for doing a good job, and off you go for another 100 metres...

That seems to be how a lot of places work - I have worked for some of them, luckily on contract...


 
Posted : 23/02/2011 10:40 am
Posts: 0
Free Member
 

And I also like how TTD styles force good design by the need to componentise things so they are testable...


 
Posted : 23/02/2011 10:44 am
Posts: 91096
Free Member
 

I agree with all you say about TDD and whatnot. I don't need good programming principles expland and justified 🙂

However.. the geek issue can be a problem.

For example, on this project people are humming and hahing about which solution will run the fastest when the servers are never loaded above about 10%. So it's less of a priority than simple clear accessible and accurate code. The database is accessed through a server written from the ground up in C++, the client is either C++ or Java. Because the app server is a separate product I can't go near it, and I have to use this bizarre undocumented proprietary API instead of web services. It takes me days to figure out wtf is going on because it's so arcane, and I'm paid by the day. Plus there's a team of three or four full time devs that would not be needed if it weren't for this. All in the name of performance that isn't really needed.

Using a Java app serve with EJB3 or Hibernate and web services would have been somewhat more resource hungry, but we've got plenty of hardware resources to spare. Developer resources on the other hand, we haven't.

Sorry for the thread hijack, OP 🙂


 
Posted : 23/02/2011 10:52 am
Posts: 0
Free Member
 

Who do they come to when they can't figure out why XA transactions aren't being propagated across components and no-one else can figure it out?

I have no idea what you are talking about so maybe you are the real software engineer 🙂


 
Posted : 23/02/2011 10:54 am
Posts: 0
Free Member
 

Sorry for the thread hijack, OP

It might not be a thread hijack - it might have served to put him off programming as a career...


 
Posted : 23/02/2011 10:56 am
Posts: 0
Free Member
 

I think the main problem is, that in the last 10years or so I am not sure if I have worked on any project they had enough funding to actually do what they wanted to do properly.


 
Posted : 23/02/2011 11:16 am
Posts: 77689
Free Member
 

That's why agile/TDD/XP are the right way to go

XP?


 
Posted : 23/02/2011 11:17 am
Posts: 91096
Free Member
 

eXtreme Programming! Grr!


 
Posted : 23/02/2011 11:42 am
Posts: 1
Free Member
 

[b]>helloworld[/b]

Job done.


 
Posted : 23/02/2011 12:10 pm
Posts: 349
Free Member
 

++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.

Now, that's a proper hello world!


 
Posted : 23/02/2011 12:13 pm
Posts: 91096
Free Member
 

You man, you 🙂


 
Posted : 23/02/2011 12:36 pm
Posts: 349
Free Member
 

Yup i have all teh skillz......to look it up on wikipedia 😀


 
Posted : 23/02/2011 12:46 pm
Posts: 0
Free Member
Topic starter
 

Wow, that's about 20 different programming languages recommended then.
I downloaded Visual Basic and it wouldn't work because I had to download something or other else as well. I'll look in to that and give it another go.
Thanks for all the replies and advice, but I think the fastest way to get this idea going is to keep using BikeJournal and just keep a record of the bike's mileage when I change a component with a note book and pen.

I like the way clients not explaining what they really want is a recurring theme, and then one or two people have given me advice on programming as a career change.
Are you sure it's the clients not explaining and not the programmers not listening that's the problem ? 😉


 
Posted : 24/02/2011 3:53 pm
Posts: 91096
Free Member
 

I like the way clients not [s]explaining[/s] knowing what they really want is a recurring theme

FTFY.

And it's true, some programmers don't listen very well. A good programmer should also be a people person I feel. But they often aren't.


 
Posted : 24/02/2011 4:00 pm
Posts: 251
Full Member
 

[i]A good programmer should also be a people person I feel. But they often aren't. [/i]

some of the best programmers I've met would struggle to entertain a pencil in conversation.

The programmers who produce the best solutions (not code) do tend to be able to talk to real people and explain in words what's possible and not possible (and why).


 
Posted : 24/02/2011 4:04 pm
Page 1 / 2