1. Are you ready for the Galaxy S20? Here is everything we know so far!

What's Raspberry Pi?

Discussion in 'Computers' started by sfbloodbrother, Dec 6, 2013.

  1. sfbloodbrother

    sfbloodbrother Extreme Android User
    Thread Starter

    Okay so I be sleepy I have heard of Raspberry Pi. But I actually don't know exactly what it is what is the main function is and what is actually supposed to be intended to used for. I talked to my psychology professor today who recommended that I get raspberry pie to learn a programming language. Originally borrowed AC plus plus book from him and he said if I want to continue Raspberry Pi is a good place to start. I know it's cheap like $45 but what can I actually do with this is it like a learning thing that will teach me programming? I want to learn C++ plus plus, Java, Python or something else that will be very useful in the computer engineering field. Right now would be a good time to start because my semester is about over and I have about 5 weeks to spare to learn something new. Red berry pie be beneficial to me? Or is there an easier language to start with, because I've never learned a programming language before. Sorry about all the mistakes in this post. I just talked to my tablet.

    1. Download the Forums for Android™ app!


  2. SiempreTuna

    SiempreTuna Android Expert

    It's basically little more than a processor with a USB port and a simple OS. It's designed primarily as a learning tool, though I think it's probably going to be more useful for people who want to get into low-level stuff.

    For me, I think it would be more useful for most people to get a cheap PC and use that to learn programming. Basically, the way you do that these days is through on-line tutorials, forums and the like and it's definitely going to be easier to find those resources for Windows - or other common OSes - than it is for the Pi. You're also going to get experience that has more direct value to potential employers.

    But that's just my opinion.
  3. Slug

    Slug Check six!
    VIP Member

    alostpacket likes this.
  4. mikedt

    mikedt 你好

    I think so as well. IMO the Raspberry Pi is more for the electronics hobbyist, so he/she can experiment and perhaps control things with it.

    SF if you wish to learn C++, Java, Python, etc. think you'd probably better putting Linux on a PC, and going from there.
  5. nickdalzell

    nickdalzell Android Expert

    It sorta, kinda looks like a ChromeCast without the skin on. it's just an electronic board with an SD Slot and USB port. i think you can use it to do small things like run programming or even stream video. there are folks running variants of Android on them.

    Looks like it has an HDMI out port as well
  6. sfbloodbrother

    sfbloodbrother Extreme Android User
    Thread Starter

    Where is a good place to start there? I could use a virtual machine.
  7. mikedt

    mikedt 你好

    Yeh use Virtual Box, and put say Ubuntu or Linux Mint in. You got a choice of IDEs like Kdevelop, Genie or Eclipse for Java. or even just use a text editor and the command line. I'm only suggesting Linux, because that's what I've used when I've dabbled around with programming. C, C++ and Python. There's Visual Studio on Windows, but I could never get my head around that. And using GCC(The GNU Compiler Collection) in Win involves Cygwin, which I think is a real kludge. Never had good experiences with anything using Cygwin in the past. Think many C++ and Java books and tutorials assume you have a Unix type environment and you have GCC to work with.

    For C++ this is a good place to get started...

    This site is a great resource to get one started. although it doesn't cover C++ or Java. Has Python though, as well as JavaScript, PHP, and Ruby.

    Do you know anything about programming at all? Like understanding logic, planning, etc.
    alostpacket likes this.
  8. palmtree5

    palmtree5 Sunny Vacation Supporter!

    When I learned C++, I was using Visual Studio. If you're learning Java, I'd go with Eclipse or NetBeans
    alostpacket likes this.
  9. Dngrsone

    Dngrsone Android Expert

    Besides being a tasty treat, the Raspberry Pi is merely a small computing device, having a footprint a little larger than a deck of cards if I recall correctly.

    This makes it useful for building small devices, though there are other devices out there.

    I believe the Raspberry Pi is a bit more powerful than an Arduino board, but as someone already said, it's basically a hobby board for automating tasks, building little robots, what have you.

    Had I spare time, I'd like to play with one of these, but... full-time job, kids and grandkids.
  10. sfbloodbrother

    sfbloodbrother Extreme Android User
    Thread Starter

    I have visual studio C++ on my desktop. Codecademy is something i havent used in a while but ill give it a shot.

    Maybe when I get a bit experienced with programming I'll then get one of these.
  11. Rukbat

    Rukbat Extreme Android User

    The more things change, the more they stay the same. We used to call them SBCs - Single Board Computers. And that was about 40 years ago. Now we have ... oh, it has a USB port and a micro OS on it.

    Apple I, Kim, 1820 - there were loads of them. Jim Godbout even came up with a way to put the ROM at the top of the memory space and walk nops on power-on until you walked into the ROM. I think I still have one of his Z-80 front-panel boards (the IMSAI replacement board) with the octal keypad and LED readout. (That board had the only IC I ever popped in 40 years of hardware design. And it was just one pin bent under that I missed.)
  12. nickdalzell

    nickdalzell Android Expert

    the little device looks like a smaller footprint version of what i did long ago--having only a motherboard, HDD and PSU screwed into a cabinet thus eliminating the 'box' part of a regular desktop computer, where only the monitor and keyboard/mouse sat on top, with the cables routed below into the cabinet. only this one is much less bulky, albeit low-spec just the same, my in-cabinet computer was 600MHz, this one is 700MHz ARM, disappointing.
  13. alostpacket

    alostpacket Over Macho Grande?

    Or Android Studio / IntelliJ IDEA for Java

    Also if one gets the urge to learn python, smack self with hammer until urge subsides.


    palmtree5 likes this.
  14. palmtree5

    palmtree5 Sunny Vacation Supporter!

    Forgot about that one
  15. Rukbat

    Rukbat Extreme Android User

    Mostly hitting or mostly kidding?

    I think the only thing more painful than Python is Forth. Hammer with self smack.
  16. g8xgs

    g8xgs Lurker

    rock bottom linux platform, which can be made to function(tailord) to do certain things

    but without the functionallity of a full blown motherboard
  17. Rukbat

    Rukbat Extreme Android User

    The 5 weeks is over, but start with Algorithms and Data Structures That'll teach you programming (which is about as much like learning a programming language as learning psychology is learning English). Programming is a method, not a language.

    You take psych, so think of it in psych terms. A computer is a very fast, but very stupid, child, with an eidetic memory. To get it to perform a task you have to break the task into simple single step operations. Not "take a step" but "lift your right foot. Move the foot 3 inches forward. Put the foot down." That's programming "walking".

    Wirth, who wrote the book in the above link, is a genius. He invented a few programming languages (that are still in use). When I was teaching programming, I discounted any beginning course that didn't use Wirth to start teaching.

    If you're left-brained, and you read Wirth, programming becomes "of course". (If you're right-brained and trying to become a programmer, you're smoking some pretty good stuff.) Life - to a programmer - is analysis. Here's a problem. You analyze it. You see a solution. You code that in a computer language. Everything BUT the last step is programming. The last step is just language translation.

    Is Raspberry Pi a good starting point? Any working computer is - from Arduino to a System 400. Making a web browser show an Android phone forum is the same no matter what computer it's done in, it's just the language that might be different. (Although in the case of websites, it's become so standardized that what you wrote for one server should run on any server.)

    But learning programming by writing programs is learning to walk by running the 3 minute mile. Learn to walk before you try to learn to run. Your professor may be a fantastic psychologist, but he's not a very good programming teacher.
    mikedt, cwcheese and palmtree5 like this.
  18. cwcheese

    cwcheese Member

    Rukbat, that was a very fine and succinct description of what programming ought to be. Too many students are simply taught a language, typically the flavor of the month, without the craft and art of programming.

    I remember using Wirth's original text to learn in Pascal on a CDC Cyber 175. Also had the fun of learning FORTRAN on an IBM 29, and my main lesson there was to have a good heavy rubber band to keep my program intact on the way home from the computer lab. A dozen languages (and a few decades) later, building programs remains the same, it's just finding a suitable language.
  19. Rukbat

    Rukbat Extreme Android User

    That's the whole thing. It's like training a brain surgeon by teaching him to cut meat with a knife. When you (and I) learn programming, we can convert any problem into a program to solve it - that's 99% of the process. Choosing a suitable language and coding what we wrote into that language is scut work.

    Which is why, out of the how-many-million-apps? in the app store, there are probably a couple of thousand really great ones at most. And look at all the web pages that look as if the back end was written by a 5 year old during a nap.

    I never taught a programming class until everyone had at least started reading Wirth, and those who thought Wirth was "too heavy" had quit. If programming 101 is too heavy for you, you're never going to be a programmer.

    (A friend of mine who studied thought, per se, and how the brain did it [and we're still in the pre-stone-age of that subject) put it this way - if you're left-brained, seeing the program in the problem is just the way you think. If you're right-brained you can pick out the appropriate handkerchief for that tie. And if you're, like most people, somewhere between the two ends, you have some logical thinking ability and some artistic ability. But only those on the far left end should take up programming as a profession. You don't advise someone who's 5'2" tall to be a professional basketball player, and you don't advise someone who's 6'6" tall and very overweight to become a jockey.

    So why are so many artists trying to write code? Because people haven't yet learned that writing code is like writing English - anyone can do it. Sure, anyone can write English, but not everyone can write Macbeth or Death of a Salesman. So we're stuck with a Play store full of dime novels.

    Off to see how badly the latest AT&T Note 3 "upgrade" downgraded my phone. I really hope this one isn't going to end up being swapped out - it's already the third one.

Share This Page