#1
  1. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Oct 2011
    Posts
    11
    Rep Power
    0

    Programming language to learn?


    You guys probably get this question a lot, and I'm not really sure where to post this, but here we go:

    I have an engineering background and recently made some hardware that I want to control with my laptop via USB. I want to make some software to control the hardware with a GUI interface. The GUI will not be particularly complex, and I'm looking for a language that's:

    (1) extremely easy and quick to learn (i'm not trying to learn hardcore programming here -- just prototype);
    (2) cross-platform (the application must be able to run on both Windows and Mac; I don't care about linux);
    (3) has a free development kit.

    My key priorities here are prototyping as rapidly as possible without getting into too much programming nitty gritty and cross-platform support.

    I have an in-depth background in PHP, Javascript, HTML, CSS, Visual Basic, a little bit of Java and a little bit of C++.

    I was looking into possibly either using Qt and C++, Python, or some language with .NET. Any advice would be really appreciated!

    Thanks!
  2. #2
  3. Banned ;)
    Devshed Supreme Being (6500+ posts)

    Join Date
    Nov 2001
    Location
    Woodland Hills, Los Angeles County, California, USA
    Posts
    9,645
    Rep Power
    4248
    You could use Python and Tk to make a GUI interface (should fulfill your cross platform requirements) and get it to call C++ functions to control the actual hardware.
    Up the Irons
    What Would Jimi Do? Smash amps. Burn guitar. Take the groupies home.
    "Death Before Dishonour, my Friends!!" - Bruce D ickinson, Iron Maiden Aug 20, 2005 @ OzzFest
    Down with Sharon Osbourne

    "I wouldn't hire a butcher to fix my car. I also wouldn't hire a marketing firm to build my website." - Nilpo
  4. #3
  5. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Oct 2011
    Posts
    11
    Rep Power
    0
    Thanks for your reply. I mean in terms of controlling the hardware, all I need to be able to do is send commands (words) over USB. For example, send the word "High" over USB. I feel like there must be some Python library to do that, so hopefully I won't have to call C++ functions.
  6. #4
  7. No Profile Picture
    Contributing User
    Devshed Loyal (3000 - 3499 posts)

    Join Date
    May 2004
    Posts
    3,417
    Rep Power
    887
    How does your USB device operate? Does it have a serial driver?
    I no longer wish to be associated with this site.
  8. #5
  9. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Oct 2011
    Posts
    11
    Rep Power
    0
    Yep it has a serial driver. So as long as python can open a COM port and send serial commands, I'm good to go.
  10. #6
  11. No Profile Picture
    Contributing User
    Devshed Loyal (3000 - 3499 posts)

    Join Date
    May 2004
    Posts
    3,417
    Rep Power
    887
    You are good to go.

    There's two ways to deal with it.

    1. Configure the comport using operating system commands/utilities, then pipe the guzinta's and cumzouta's of program to the comport.

    2. Call the operating system API's for configuring the comport, then treat the device like a file.

    Either way, if you need advice with regard to Python, you should take it to the Python forum.
    I no longer wish to be associated with this site.
  12. #7
  13. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Oct 2011
    Posts
    11
    Rep Power
    0
    Cool thanks for all the advice!

IMN logo majestic logo threadwatch logo seochat tools logo