ClioSport.net

Register a free account today to become a member!
Once signed in, you'll be able to participate on this site by adding your own topics and posts, as well as connect with other members through your own private inbox!

  • When you purchase through links on our site, we may earn an affiliate commission. Read more here.

Anyone a software engineer?



sn00p

ClioSport Club Member
  A blue one.
I am creating a program that using canbus data monitors the vehicles battery voltage and provides warnings when it seems failure is imminent, sounds simple, it certainly isn't!

I like CAN, mainly because it's open collector and the (backoff system means that) highest priority message is always guaranteed to succeed.
 
I write mainly PHP stuff these days - just because it's quick to get something to market. My job is for a courier solution online, most of the work I do is around user experience design rather than hardcore coding

My personal work is currently writing a social network which I'm finding quite fun

I prefer the aspect of user experience these days - coding challenges are few and far between :(
 

SharkyUK

ClioSport Club Member
Seeing as there's quite a few of us, what sort of software (and technology) are we all working on then?

I'm currently doing embedded DSP stuff for radar technology. I spend half my life buried in schematics, datasheets for electronic components, logic analysers and oscilloscopes.
^ Sounds like folks are working on some cool projects (either for work or pleasure). I have loads of projects I'd like to get done at home but my job takes up pretty much every waking hour at present. :(

Whilst I have a good understanding of most things software engineering I do/have spent most of my time specialising on particular components of projects. I'm very lucky in that my job allows me to specialise in the area I've always loved, graphics and visualisation, but I also specialise in development of scalable architectures. That is, the development of software and algorithms for systems where parallelism is key and optimal performance is essential (multi-threaded/multi-core systems and clusters). Sounds a bit boring but it's a fascinating field. Honest. :D
 

sbridgey

ClioSport Club Member
  disco 4, 182, Meglio
I would think that the hardest thing about that is defining what constitutes a "failure" TBH

For example, injectors, at what voltage do you classify them as failing, given that although they will begin to open more slowly as voltage drops, the map in the ECU should contain a voltage compensation table to allow for this, so while they might officially required 12V, they will actually function very well at 9V if mapped accordingly.

Well I haven't gone into such detail as that, we have decided a voltage area that it shouldn't start at and we watch the gradient slopes to determine if it is about to reach the failure point/area, we then give the customer an alert to tell them there battery will likely fail shortly. I am now in the process of using heuristics to make the guessing more educated. Lots and lots of nested FOR loops.
 
  182/RS2/ Turbo/Mk1
Well I haven't gone into such detail as that

That didnt seem very detailed to me, was just one example, could given dozens TBH

we have decided a voltage area that it shouldn't start at and we watch the gradient slopes to determine if it is about to reach the failure point/area, we then give the customer an alert to tell them there battery will likely fail shortly. I am now in the process of using heuristics to make the guessing more educated. Lots and lots of nested FOR loops.

Ah didnt realise you just meant for it to be able to start and hence have an alternator running once it has and therefore no voltage/current drop anymore, I thought you meant in terms of during use if supply outstrips demand and voltage degradation occurs as a result.
 
Bang on. I started coding when I was 12 (late starter LOL)
I went to college and they taught me 8086 assembler, cobol and pascal. Left college and went for an interview and OBVIOUSLY they wanted me to know C++, so I said "give me 6 weeks" bought a book and learnt C++, went back and got the job. Then they moved from Linux C++ to Windows VB (ugh) so I learnt that while working - they sent me on a HNC at Uni on a day release, where they tried to re-teach me OOP in C++ (which was what I did for a living lolz) so that was useless
Then went for a job in ASP, as I wanted to move to web stuff - again had to self learn it, and from there went through a load of languages including java, ruby on rails etc.. until I ended up on PHP

The first job I ever got they wanted to see a college certificate, not a single job since has cared - they all wanted 2-3 years experience and examples of previous work

Phil, where would/did you progress after PHP?
 
From PHP the natural route a few years ago was Ruby on Rails - but I'm really not a fan, used it for a while and went back to PHP

Most of the hardcore PHP developers have got into frameworks such as Zend now - I spent 2 years using Zend Framework and it is nice. I've written my own framework for app development which I use now though.

I'm a manager now and one of the defining factors is not just what language I prefer but what language I can find people to recruit into. PHP is so massively popular these days that it's easy to recruit for.

If you go hardcore with it like Facebook have done (they wrote a compiler that compiles PHP into native C code) then it's very very capable at an enterprise level.
 

sbridgey

ClioSport Club Member
  disco 4, 182, Meglio
That didnt seem very detailed to me, was just one example, could given dozens TBH

Ah didnt realise you just meant for it to be able to start and hence have an alternator running once it has and therefore no voltage/current drop anymore, I thought you meant in terms of during use if supply outstrips demand and voltage degradation occurs as a result.

If we were to find information out about voltages required for a starter motor or injectors that would probably make it easier to make a more accurate estimate as to the point of battery failure but companies don't seem to like to give this information out. We had to decipher the CANBUS codes for ourselves to determine specific events despite us being given a database full of CAN data.

We are monitoring whilst the engine is on and can throw warnings then but the real point of the program is to save companies money by reducing the risk of a vehicle not starting when they come to use it in the morning.
 
  182/RS2/ Turbo/Mk1
Facebook must be an epic company to work for from a coding point of view, it's a company built around a nerdish love of hacking out code etc, 15 years ago when I was really into writing software I would have swapped a leg for a job with a company like that.
 
  Clio 172
Hmm, I'd love to sit at home and learn it all, but apart from the general catch up i'm playing a couple evenings a week now I don't see myself being motivated enough to be able to learn enough, mainly because I have a full time job. Going to uni will certainly be a motivator as well as a way of learning everything I need to know (ish..)

Some interesting stuff to read, making me more and more confused but certainly all helping as well :)
 
Facebook must be an epic company to work for from a coding point of view, it's a company built around a nerdish love of hacking out code etc, 15 years ago when I was really into writing software I would have swapped a leg for a job with a company like that.

Yep - the documentaries about it are nuts - Mark Zuckerberg just sits in the office with everyone else coding away.
They have huge break out areas with bean bags and sofas - the whole place was just full of young coders listening to ipods and hacking away
Would still cut a leg off for a job with them
 

sbridgey

ClioSport Club Member
  disco 4, 182, Meglio
I think i would prefer to work for Google, not doing software development mind you.
 

Darren S

ClioSport Club Member
Hahahahah yeah I used to be exactly the same way - but the lads who ripped off that castle game and turned it into angry birds now hold the record for the biggest selling game of all time.

I think the days of Xbox/PS2 development being king are long dead - it seems like every single kid in the world has an android or iOS device these days - and the apple appstore has really opened up software development to the masses

Ironically going full circle, imo. The days of bedroom-based games developers in the C64/Spectrum days are having a revival with the mobile market. It's great too see as well. As much as I like a high-end, polished and well produced game - there's also masses of appeal to a simple, small and addictive game.

D.
 
  Clio 172
I do a bit of IT work here and there for a bloke who runs a business from home, simple stuff thats hard for him.

Now what I am thinking of doing as a little project is making a program for something he has.

Basically he has a list "monthly customers" "monthly suppliers" both seperate Excel spreadsheets.

Then random number next to each one.

Each month there might be a new client so i'd have to add that to the list, with "NEW CLIENT" next to it, the next month taking away the "NEW CLIENT" part

then at the bottom it'll have total clients and total jobs. All the same with the customer one as well.

I've got the formuale in place that adds up total clients and jobs.

Just wondering if it'd be worth making a little program for adding clients and stuff. Just for portfolio mainly but also to get a bit of experience as well, i'm pretty sure it'd work as a fairly straight forward program.

What should I use? VB?
 

sbridgey

ClioSport Club Member
  disco 4, 182, Meglio
I do a bit of IT work here and there for a bloke who runs a business from home, simple stuff thats hard for him.

Now what I am thinking of doing as a little project is making a program for something he has.

Basically he has a list "monthly customers" "monthly suppliers" both seperate Excel spreadsheets.

Then random number next to each one.

Each month there might be a new client so i'd have to add that to the list, with "NEW CLIENT" next to it, the next month taking away the "NEW CLIENT" part

then at the bottom it'll have total clients and total jobs. All the same with the customer one as well.

I've got the formuale in place that adds up total clients and jobs.

Just wondering if it'd be worth making a little program for adding clients and stuff. Just for portfolio mainly but also to get a bit of experience as well, i'm pretty sure it'd work as a fairly straight forward program.

What should I use? VB?

Use a MySQL database and C# to make sense of it.
 

sbridgey

ClioSport Club Member
  disco 4, 182, Meglio
Access is quite expensive though, mysql is free and visual studio express is free.
 
  AB182, Audi A5 3.0
Am a C#/SQL software developer.

I do a bit of IT work here and there for a bloke who runs a business from home, simple stuff thats hard for him.

Now what I am thinking of doing as a little project is making a program for something he has.

Basically he has a list "monthly customers" "monthly suppliers" both seperate Excel spreadsheets.

Then random number next to each one.

Each month there might be a new client so i'd have to add that to the list, with "NEW CLIENT" next to it, the next month taking away the "NEW CLIENT" part

then at the bottom it'll have total clients and total jobs. All the same with the customer one as well.

I've got the formuale in place that adds up total clients and jobs.

Just wondering if it'd be worth making a little program for adding clients and stuff. Just for portfolio mainly but also to get a bit of experience as well, i'm pretty sure it'd work as a fairly straight forward program.

What should I use? VB?


Probably best you use C# as it is the 'in' language at the moment. Use an SQL server of some kind (best option would be SQL CE, as you can then bundle it with the application and it will get installed under the clickonce installer). My advice for data manipulation would be to use Datatables, dont use datasets. If your loading data for grids etc, use a data adapter. If you setup the insert/delete/update commands of the data adaptor, you will be able to bind directly to a datagridview, meaning you wont have to manually manage the updating of data via specific events. Sounds like he wants a report at the end of each month, so display things in a printable format, write a crystal report. I would suggest the following tables:

tblCustomers - holds the details of the customers
tblSuppliers - hold the details of the suppliers
tblSales - holds all the sales order records
tblPurchases- holds all the purchase order records

from these tables, you can create a form that filters for all records int he current month. You can determin if they are a new customer/supplier in that month by use of a 'Date_Added' field in the customers/supplliers tables.

A good point of call if you get stuck in the MSDN website.
 
Last edited:
  Clio 172
Just thought i'd give a little update to say I got an unconditional offer to the Software Engineering course :) Well chuffed!

I still haven't started the program project but I think my motivation will be up a bit now I know I have it as a future.
 

jenic

ClioSport Club Member
Where are you studying? And what course?

I have just started a 4 year Masters in Computer Science with Software Engineering.

It really was a back to basics course, I was surprised how quickly the course caught up with my previous knowledge, stuff that takes a year in college is covered in just a few weeks! I'm also surprised by the aspects of the course I enjoy, there is so much more to the course than just programming, units to do with UCD and Human Aspects of CS are really interesting.

Any questions, just ask.
 
  350Z
Nice one mate, good to see some more softies around Dorset :)

Give us a shout if you have any questions, but I assure you that once you grasp the basic concept it all clicks into place.
 


Top