Pages: [1] 2   Go Down
Author Topic: What would a layman do with C++???  (Read 2749 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 17
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

A brief background...no programming or coding experience until last year when I bought an Arduino.  I've been a welder/machinist for about six years now, and having the capability to do quite a bit with metal has helped me improve functionality in my home and life.  So I am trying to figure out how to use computers i.e. Arduino and C++ to improve the functionality in my home and life.  I've found some applications for the Arduino, but I'm at a loss to figure out how to write a computer program to do something useful.  This is not a criticism of the programming languages out there, far from it, but aother than large business oriented applications, what would a common man such as myself do with C++?  Games hold no interest for me, a deck of cards suits me just fine, and looking through the app store for iPhone and Android I see nothing that would enhance my life.  I use trig quite a bit when I am designing projects in metal, but a common calculator handles those problems just fine, with a very low cost and learning curve.  I guess I am just a little disillusioned when I see what 14th century armorers could do with hammers and fire, and now, with modern computing power easier to access and utilize than ever, and we get....Angry Birds!!!  So have any of you written applications or programs that provided some enhanced functionality to your life?  Stuff that isn't done as easily by other means?  Long story short, I'm getting burnt out trying to work through the tutorials for C++, when I still haven't answered the basic question "What the *&%$ am I going to do with it?"
Logged

bird denigration is a crime

New Hampshire
Offline Offline
God Member
*****
Karma: 17
Posts: 781
There are 10 kinds of people, those who know binary, and those who don't.
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
I guess I am just a little disillusioned when I see what 14th century armorers could do with hammers and fire, and now, with modern computing power easier to access and utilize than ever

Honestly, I'm quite reluctant to even attempt to answer your question as the above statement makes it perfectly clear that you already have a significant bias on the subject to begin with.
Logged


Offline Offline
Newbie
*
Karma: 0
Posts: 17
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Sorry, I didn't intend to sound mean spirited or biased.  But besides games, what have you done with programming?  I ask this because I see some glimmer of possibility there, the same glimmer I saw years ago with metalwork.  And now I have built metal stairs for $300,000 homes, repaired my vehicles, built custom tools that allowed me to tackle more complex jobs, made a bit of money, and I am trying desperately to understand the vast possibilities that programming knowledge can open up.  If nothing else, consider this thread a plea for help.  I know there is something there, but I can't yet figure out what programming can do for me.  So I ask, what has it done for you??
Logged

bird denigration is a crime

Left Coast, CA (USA)
Offline Offline
Brattain Member
*****
Karma: 361
Posts: 17294
Measurement changes behavior
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
I know there is something there, but I can't yet figure out what programming can do for me.  So I ask, what has it done for you??

 Programming is just the method used to get an Arduino board to function in the application one wants to build. It's not clear to me if your problem is with having to learn programming to utilize a Arduino, or if you just can't envision a useful project using a Arduino?

 C/C++ is just the programming tool chosen by the Arduino team to allow users to build projects.

Lefty

 
Logged

Leighton Buzzard, UK
Offline Offline
Edison Member
*
Karma: 21
Posts: 1339
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

what would a layman do with C++
"move along, nothing to see here"
Logged

there are only 10 types of people
them that understands binary
and them that doesn't

Manchester (England England)
Online Online
Brattain Member
*****
Karma: 627
Posts: 34250
Solder is electric glue
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Well a computer is a tool to enhance what you do, what has it done for me in the last few years?
CNC milling, 3D printing, musical instruments that you can't buy that no one has ever seen before. Met lots of great people, had a good time and enjoyed myself, so not much then.
Logged

Finland
Offline Offline
Sr. Member
****
Karma: 1
Posts: 270
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Can you figure out any home automation projects where you could utilize the Arduino and your metal work skills? I myself got acquainted with the Arduino out of need.  I needed to build a control system for the heating equipment of my home. I was already a professional software engineer at that time, but a total newbie on what comes to electronics and microcontrollers.

Or do do have children? Build a mechanical/electronic game for them. Use the Arduino/C++ to control it.
« Last Edit: October 11, 2011, 03:09:35 pm by pekkaa » Logged

Global Moderator
UK
Offline Offline
Brattain Member
*****
Karma: 303
Posts: 26354
I don't think you connected the grounds, Dave.
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Do not denegrate Angry Birds!
Sure, tin-bashers could do great things with fire and hammers, but did they make sextants?
Microscopes?
Could they even conceive radio?
Logged

"Pete, it's a fool looks for logic in the chambers of the human heart." Ulysses Everett McGill.
Do not send technical questions via personal messaging - they will be ignored.

New River, Arizona
Offline Offline
God Member
*****
Karma: 19
Posts: 936
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Hey bebo, I wondered the same thing for a long time.  I wondered because the darn computers were too hard to make do something real.  I realize that a lot of people are fascinated with flashing lights and cute graphics, but I just couldn't see the use for programming in my everyday life.

However, I wanted to measure the power I was using at any given time.  Not over an hour, not by reading the meter, but by turning on the electric oven and looking at something.  You know, there's not a heck of a lot out there that can help with that.  So, an arduino, a little web searching and in a few months of protracted cursing of various web sites that don't explain things well I had a device that measures instantaneous power.  Then, I wanted to save that over time; then display it on the wall; then control things based on it.  You can see where that went.  Now, I have a dozen or so little tiny computers programmed to do various things around the house semi-autonomously that take care of mundane chores for me.  Devices that add acid to the pool, turn on the bedroom lights so I don't have to at bedtime, run the cold water out of the pipes leading to the master bedroom so I don't have to wait for the low flow faucet to get the hot water there.

To see the kind of things that would be fun to turn over to a computer, think about what you do on a mundane, routine basis.  Check the level of salt in the water softener?  Remind you to change the furnace filter?  Check the fuel level on the basement furnace?  Turn on the attic fan on really hot days?  Feed the bird when you're away for a few days.

In my opinion, what we don't do with computers is more telling than what we are doing.  If they're so capable, why aren't they checking the charge on our car battery and telling us that we left the lights on?  Why was the garage door left open all night?

These are the problems you can solve in your real life that will add value and time for other things.

Besides, I beat all the levels on Angry Birds already.

Oh, another thing.  Don't let knowledge of the language slow you down.  You can spend the rest of your life worrying about objects and classes and such stuff.  YOU DON'T NEED THAT STUFF until you need it.  Just start off with something real that you want to do.  Say, shut off the compressor for your plasma cutter every night at 9PM so it won't kick on and wake the dogs.  You can do that with very little code and no exotic stuff.  Just do it.  Then look around at what else you could do.  Monitor the temperature of the tractor's block to be sure it isn't going to freeze up and break maybe?  Turn on the chicken pen's lights when the coyotes get too close.  Check the water level on the septic tank?  Bang on the floor with a rubber mallet when the downstairs neighbors turn the stereo up too loud.

.......
« Last Edit: October 11, 2011, 04:15:49 pm by draythomp » Logged

Trying to keep my house under control http://www.desert-home.com/

Boston Suburbs
Offline Offline
God Member
*****
Karma: 16
Posts: 955
I am above your silly so-called "Laws", Mister Ohm.
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

From a practical answer perspective, here's what I'd recommend:

Open up the IDE (the programming interface) and bring up the example programs.  Start with the classic- BLINK.  All it does is make a light flash off and on, but in terms of a program, everything is there.. and just about as basic a program as you will ever find.  The thing is, it's so basic that it's easy to look at and understand.

C++ tends to be a bit of cryptic language and punctuation, BASIC is sometimes easier to begin with.. but the problem with BASIC is that it teaches bad habits many times, and tends to distance you from things you will eventually want to understand.  C/C++ is worth the effort of learning (and it comes pretty quick for simple programs like Arduino applications) because it allows you to go down into the guts with relative ease, or wrapper things in functions and libraries to make it easier at your choice.  Arduino is actually a simplfied version of C++, as a language.  C++ (Or Arduino) is just in general the best tool for the job.

As for what to do with it... how about controlling a handful of stepper motors and some threaded rod, and make a 3d automated milling machine... I'm willing to bet you as a machinist know a heck of a lot in terms of framing for robotics, and with a bit of incorporation of motor control systems, could build some rather impressive devices.  Just sayin.. not many of us actually have access to or experience with a lathe or TIG welder.

It's the matter of the PITA of learning how to use a specialized purpose tool.  Never easy, no matter the tool... but usually at the end, knowing how to use any tool is a good thing.....
Logged

When the testing is complete there will be... cake.

West palm beach, FL
Offline Offline
Sr. Member
****
Karma: 1
Posts: 325
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

This is an arduino project that was made to help/improve a handicap child's life.

http://arduino.cc/blog/2011/10/05/arduino-ipod-and-rfid-make-beautiful-handicapped-accessible-music-together/
Logged

I could print the Arduino logo on a box of cereal and sell it as "Arduin-O's"

Offline Offline
Newbie
*
Karma: 0
Posts: 17
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Thank you all for taking the time to reply.  I think some of you may have misread my sentiment.  I am only on this forum because I am fascinated and envious of your knowledge and experience, and I want a taste too.  Ultimately, it's my own lack of imagination and insight that is leaving me disillusioned, so I am asking for a little insight from this community.  I've had the Arduino for about a year now, working with it here and there where I can find the time.  It's terrific!  I've already made several successful and practical projects with it, and some frivolous ones as well.  The coding part is going slow, but every day a little more makes sense.  So I made the leap and got a C++ compiler and tried to learn the language.  That's where my enthusiasm waned.  The tutorials were reasonably easy to follow, but I had a hard time figuring out the applications of these parts of the language.  I'm still trying to figure out why pointers are so useful.  Looking for examples on SourceForge and other such sites left me frustrated because I could never get any of the programs to compile. 
   It seems like most of the C++ applications out there in the world are done by teams of professionals, working for businesses.  So in regards to the original question, I think I'll stick with the Arduino subset of C++ until I feel bound by it's limitaions.
  To the posters who took the time to reply:

  Retrolefty-  I think my problem is how to use C++ outside of the Arduino platform.

  mmcp42 - ???

Grumpy Mike - It's not about what can I do with  computer, it's about what can I do with a knowledge of C++.  I use CAD to design my welding projects, photo editing programs, etc.  But I see your point, thank you.

Pekkaa - I've got a five month old girl, and I've got several ideas in mind for her.  Just because I don't play games much doesn't mean I don't want to make fun stuff for her.

AWOL - Your right, tin bashers didn't make sextants, microscopes, or conceive radio.  They didn't conceive a Bose-Eintein condensate, LSD, or the FleshLight either.  What's the point?  But where did the sextant makers get the metal to make the sextant?  Where did the microscope makers get the metal tube?  Where did the radio makers get the wire?  From the tin bashers.  To paraphrase Newton, we are all standing on the shoulders of giants.

  draythomp - THANK YOU.  This was by far the most informative reply.  Your right, I don't need that stuff until much later. 

  focalist - I've worked through a lot of the examples, even wrote my own basic code.  I'd love to make a CNC controller for my plasma cutter, but I'm not there yet.

So thanks everyone.  If you ever have any questions about metal, feel free to call.
Logged

bird denigration is a crime

Manchester (England England)
Online Online
Brattain Member
*****
Karma: 627
Posts: 34250
Solder is electric glue
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
So I made the leap and got a C++ compiler and tried to learn the language.  That's where my enthusiasm waned.  The tutorials were reasonably easy to follow, but I had a hard time figuring out the applications of these parts of the language.  I'm still trying to figure out why pointers are so useful.

I see, that is a rather dry way to learn a language because as you say it is hard to see why some things are useful. In fact 90% of people only use 50% of any language, that is not many people try to learn it all because without context it is dry.

Pointers are really useful when you need them but I haven't needed them in all my arduino projects. A lot of effort is devoted to getting teams to work together successfully, that is the only way large projects can be done, but small projects on small machines don't need the same techniques.

As to the CNC, have you seen my conversion project?
http://www.thebox.myzen.co.uk/Hardware/CNC_Conversion.html
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 17
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Thanks Mike, I don't feel like such a Dumas ( thats french for dumb ass).  That CNC conversion is pretty sweet, as well as the rest of the stuff on your site.  I saw the Hexome somewhere else recently...elegant. 
Logged

bird denigration is a crime

Global Moderator
UK
Offline Offline
Brattain Member
*****
Karma: 303
Posts: 26354
I don't think you connected the grounds, Dave.
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

The surname of the author of The Count of Monte Cristo is French for 'thick'?
Quelle horreur.
Logged

"Pete, it's a fool looks for logic in the chambers of the human heart." Ulysses Everett McGill.
Do not send technical questions via personal messaging - they will be ignored.

Pages: [1] 2   Go Up
Jump to: