Rose by any other name would smell as sweet - Page 1
Forum section: electronics / general

author: Rick Law
author_rank: Super Contributor
timestamp: February 09, 2016, 09:39:16 pm
content: Ok, this bugs me. So call it a rant.A program is aprogram. Why on earth would you call it asketch. Perhaps to say "I am a shmuck because I know Arduino?" -or- "I don't know squat so I call a program a sketch?"I am being a bit bias here. I like to dabble in programming now and again. The idea of dabbling in sketching is not appealing. Sketching implies to me drawing something, not writing something.When there is already a perfectly good word:programfor a program, why invent a new word...

author: nctnico
author_rank: Super Contributor
timestamp: February 09, 2016, 09:45:24 pm
content: I guess it's something from the modern age. The modern word for 'nerd' is 'maker'.

author: HAL-42b
author_rank: Frequent Contributor
timestamp: February 09, 2016, 09:53:41 pm
content: When you can't match the skill level of those before you, you invent your own 'thang' and call it something different.Program > Code > Application > App > SketchMy prognosis for the future: Sketch > Swish > Gesture > Burp > Fart > Meh and so on as the skill level continues to fall.

author: c4757p
author_rank: Super Contributor
timestamp: February 09, 2016, 09:59:44 pm
content: Anyone who thinks the use of new terms is a product of diminishing skill clearly didn't pay attention to the quality of most code years back. I'll get off your lawns, though...

author: Muxr
author_rank: Super Contributor
timestamp: February 09, 2016, 10:06:10 pm
content: Quote from: Rick Law on February 09, 2016, 09:39:16 pmIt stems from Processing. Processing is what Wiring is based on, the "Arduino language". Processing is a language initially made for electronic art and visual processing. This is why they named it a sketch. To appeal to the non-programmer crowd.Personally I find it quite clever. It abstracts all the confusing stuff non programmers have a hard time grasping and lowers the barrier of entry, all this while really not sacrificing too much of the performance higher level scripting languages might. The popularity and Arduino adoption speak for itself.

author: dferyance
author_rank: Regular Contributor
timestamp: February 09, 2016, 10:28:41 pm
content: You are certainly not the only one that it bothers. Hell, it bothers me that programs are called "apps" when running on a tablet but "applications" when running on a laptop.There is a lot that Arduino has done that makes the hobby fun for me. But it is limited by being stuck with its beginner friendly origins. I have lots of experience in software but am more limited in embedded software. The jump from Arduino into something more advanced (e.g. keil) is pretty big. I want both a real IDE (with debugger of course) but still having simple APIs and examples to get started. I wish it would grow a little more advanced while not forgetting its beginner-friendly roots. That would require significant changes to the Arduino IDE and no longer playing games at hiding the C++ behind it (e.g. sketches).

author: Muxr
author_rank: Super Contributor
timestamp: February 09, 2016, 10:32:20 pm
content: You can do inline assembly in Wiring(Arduino). I dunno that is that restricted. But yeah if you'd like to learn how it's done in the industry then a real IDE and SDK is probably the way to go.I use Arduino for test jigs. I find it good enough for that. For shipping stuff I use whatever IDE works best for a given MCU.

author: HAL-42b
author_rank: Frequent Contributor
timestamp: February 09, 2016, 10:38:00 pm
content: Quote from: c4757p on February 09, 2016, 09:59:44 pm10 DEFINE FLAWED $SYSTEM_A20 UNDERSTAND FLAWED $SYSTEM_A POORLY30 WRITE $ABSTRACTION_LAYER OVER $SYSTEM_A SO YOU WON'T HAVE TO UNDERSTAND $SYSTEM_A40 IMPLEMENT $ABSTRACTION_LAYER POORLY50 $SYSTEM_A = $SYSTEM_A + 1.0060 GOTO 10Result:Anything I missed?

author: retrolefty
author_rank: Super Contributor
timestamp: February 09, 2016, 10:44:51 pm
content: Quote from: Muxr on February 09, 2016, 10:06:10 pmThe original Arduino project was an in-house development effort for an educational institution to allow artist/media students to utilize microprocessors into their design projects. Sketch was just a name that was familiar to the people the project was aimed at. The aim wasn't to turn artists into computer geeks, but rather see what they could do using a simple to use IDE. The fact that it turned into a very good entry point for anyone wishing to understand and utilize microcontrollers was an unplanned side-effect.Processing was just the IDE model they used, not the java version used to program simple window applications. Wiring was an existing project that just defined a lot of functions and libraries to help abstract some of the microcontroller details, like pin# rather then port name/bit position used in the machine code. That along with the gcc C/C++ compiler tool chain and AVRDUDE downloading tool meant the original Arduino team had relatively little code to create from new but rather just assemble and integrate existing open source software components. Open sourcing the hardware was their best rather accedental step that quickly lead to it's popularity. Clones and homebuilt version were available even soon after the start.So a lot of the success was just luck of the right idea, at the right time, at the right price that opened up access for a lot more people. They replaced the Basic Stamp idea and user base with a better solution.

author: c4757p
author_rank: Super Contributor
timestamp: February 09, 2016, 10:54:15 pm
content: Quote from: HAL-42b on February 09, 2016, 10:38:00 pmThe point of abstraction?

author: HAL-42b
author_rank: Frequent Contributor
timestamp: February 09, 2016, 11:07:01 pm
content: Quote from: c4757p on February 09, 2016, 10:54:15 pmWriting One - Size - Fits - All code?Poor understanding of the underlying structure?Laziness?

author: Muxr
author_rank: Super Contributor
timestamp: February 09, 2016, 11:14:36 pm
content: Quote from: retrolefty on February 09, 2016, 10:44:51 pmNo. Not quite the correct history. My post you quoted is correct. Your version is quite a bit off. I remember playing with Processing in the early 2000s for some quick graphing and the Sketchbook existed back then. The Arduino didn't start till some years later. In fact Wiring is what Arduino used from the start. Which was based on Processing.Processing (source wikipedia)QuoteHistory of Arduino:QuoteWiring existed few years before Arduino still:QuoteMassimo speaks about this quite often actually, so I was pretty sure I got it right.

author: retrolefty
author_rank: Super Contributor
timestamp: February 09, 2016, 11:14:59 pm
content: Quote from: HAL-42b on February 09, 2016, 11:07:01 pmThat can all come in time for the Arduino users that wish or need to move on, many do but many just want the results that can be had just minimum investment in time and funds. Most cell phone users don't understand the underlying structure of their handsets, so should they turn them in for not being worthy?

author: retrolefty
author_rank: Super Contributor
timestamp: February 09, 2016, 11:29:05 pm
content: QuoteThe original Processing (still avalible and used) is an IDE that used Java as it's fundamental underlining programming language. Arduino uses C/C++ as it's fundamental programming language and used a modified Processing IDE. Arduino uses a different tool chain, different programming language. You can't program an Arduino with the standard processing IDE.Yes, they both refer the users source program as a 'sketch' but other then that they are different things. Wiring was just a collection of C/C++ functions and libraries again not a new or different language, it's C/C++ all the way.

author: HAL-42b
author_rank: Frequent Contributor
timestamp: February 09, 2016, 11:33:43 pm
content: Quote from: retrolefty on February 09, 2016, 11:14:59 pmThose are end users. I'm not judging the end users.I'm mainly pissed at code monkeys who go and re-invent the wheel instead of improving on the already existing wheel because they can't be arsed to understand it.

author: Muxr
author_rank: Super Contributor
timestamp: February 09, 2016, 11:39:20 pm
content: Quote from: retrolefty on February 09, 2016, 11:29:05 pmSemantics... Both Processing and Wiring are technically frameworks and development environments which abstract a lot of the setup tasks and features of their native ecosystems. Which is why I wrote "languages" in double quotes. They are actually often referred to as their own languages, even though under the hood Java and C++ respectively is accessible as you mentioned.This of course is nothing new. A lot of languages live on top of other ecosystems: Scala, Groovy, Jruby, Jython... to name a few targeting the JDK for instance.

author: retrolefty
author_rank: Super Contributor
timestamp: February 09, 2016, 11:45:42 pm
content: Quote from: HAL-42b on February 09, 2016, 11:33:43 pmNot sure what that means, but whatever.Arduino opens new doors for new users and needs not be a thorn for any existing professional programmer, they already know how to program microcontrollers with the tools they already own and use. The hobbyist world got a real gift with the Arduino project, that can't be denied. How long that lasts will depend on how Arduino progresses (very murky and messy future I'm afraid) over time and what new entry level platform may replace it in popularity someday. Arduino is not an end state but rather an entry state that allows one to stay or move on depending on their interests and needs.

author: AlfBaz
author_rank: Super Contributor
timestamp: February 10, 2016, 12:11:47 am
content: Quote from: retrolefty on February 09, 2016, 11:45:42 pmI beg to differ. The proliferation of arduino users and their musings on the net, deteriorate the SNR of good documentation when searching for info on stuff the arduino folk like to do. Certain search phrases that use to yield a boat load of good heady documentation on the subject, mostly AN's from manufacturers, now bring up forum questions and descriptions from non-engineering arduino people. It's almost like a virus

author: retrolefty
author_rank: Super Contributor
timestamp: February 10, 2016, 12:16:21 am
content: Quote from: AlfBaz on February 10, 2016, 12:11:47 amSmacks of elitism. They post too much stuff on the internet, clog up E-bay, etc.

author: sleemanj
author_rank: Super Contributor
timestamp: February 10, 2016, 12:36:37 am
content: Quote from: AlfBaz on February 10, 2016, 12:11:47 amSo add -arduino to your Google search term and Google will exclude it for you.

author: sleemanj
author_rank: Super Contributor
timestamp: February 10, 2016, 12:46:58 am
content: As for "sketch", it's just a word. I have my degree in Computer Science, I've spent 16 years earning my way by programming, I hate to think how many lines of code I've written, many bajillions I'm sure, if somebody wants to call their program a "sketch", fine by me.Frankly it's not that far from the truth in the Arduino IDE considering that it what you write will be augmented considerably by the pre-processor - your sketch gets fleshed out.There is however one hideous error that I have seen new Arduinites make and needs to be stomped out the second you see it, calling a function a "void", it's understandable why they make that error, because all they have seen is void returning functions, but I've even seen it in a couple of things aimed at beginners, saying things like "make a new void [....]", or "see in the void [....]".

author: Muxr
author_rank: Super Contributor
timestamp: February 10, 2016, 12:49:33 am
content: hah that's pretty cute, calling a function void. As someone who's programmed since mid 80s (software engineer is my day job) none of this stuff phases me, they can call it  what they want, little variety is fun. With Google, stackoverflow, github... etc everything is amazing now days.

author: dannyf
author_rank: Super Contributor
timestamp: February 10, 2016, 03:54:14 am
content: Arduino is for fast programming, with much foresight or planning, like sketching out something, vs painting it.Programming implies deliberation, a typical trait unheard off by an arduino programmer, a sketcher, I guess?

author: ivaylo
author_rank: Frequent Contributor
timestamp: February 10, 2016, 06:50:20 am
content: @Muxr is right, this is where sketch came from in this context. No big deal, it's actually nice they kept it for historical purposes...

author: AlfBaz
author_rank: Super Contributor
timestamp: February 10, 2016, 12:08:44 pm
content: Quote from: sleemanj on February 10, 2016, 12:36:37 amFor years I've been wondering how to exclude stuff from google searches.... and its that simple

author: dannyf
author_rank: Super Contributor
timestamp: February 10, 2016, 12:23:05 pm
content: QuoteSeems to me you should blame your inability to use a search engine rather than people expressing their love for arduino.Not an arduino user myself but I think their right to express should be defended.

author: tszaboo
author_rank: Super Contributor
timestamp: February 10, 2016, 12:58:08 pm
content: Quote from: dannyf on February 10, 2016, 12:23:05 pmNo. When you are searching for a part number, and the first result is not the manufacturer's page, nor a supplier page, but Adafruit or Sparkfun or seed or whatever, that is just bad I'm afraid.The sketch... I guess if it is called program or code, that would scare people away. Imagine like a linux web page, that is probably how electronics looks like for most people. Linux stuff is scary, I cannot stand on those pages for minutes. They use words that dont make sense.

author: Circlotron
author_rank: Super Contributor
timestamp: February 10, 2016, 01:23:31 pm
content: Quote from: HAL-42b on February 09, 2016, 10:38:00 pmI think that is how governments preside over their subjects via various departments.

author: AlfBaz
author_rank: Super Contributor
timestamp: February 10, 2016, 02:08:28 pm
content: Quote from: dannyf on February 10, 2016, 12:23:05 pmNice to see you defend others rights to express opinions, except, of course, those you don't agree with

author: Bruce Abbott
author_rank: Frequent Contributor
timestamp: February 10, 2016, 11:25:34 pm
content: Quote from: HAL-42b on February 09, 2016, 11:33:43 pmIf it's easier for them toreinvent the wheelrather than understand the documentation, maybe the documentation isn't that understandable.

author: Rerouter
author_rank: Super Contributor
timestamp: February 11, 2016, 01:37:58 am
content: So as yet another self taught programmer, why is void not recommended for declaring a function, I picked up on hints searching around, mainly to do with the constructor, however no clear cut "Never do this" stuff,

author: sleemanj
author_rank: Super Contributor
timestamp: February 11, 2016, 04:28:54 am
content: void is perfectly proper for declaring the return type of a function that returns nothing (in C/C++ at least that is).My comment was about people who don't know the word "function" and instead use the word "void" as if "void" was the word "function". Yes. These people exist.

author: autobot
author_rank: Regular Contributor
timestamp: February 12, 2016, 08:27:35 pm
content: Quote from: dferyance on February 09, 2016, 10:28:41 pmRecently they've done just that:Image of "visual micro" :http://electronics360.globalspec.com/images/assets/146/6146/IHS-151125-ArduinoSoftwareTools_Figure_-_Visual_Micro_DebugScreen.docx.jpgArticle:http://electronics360.globalspec.com/article/6146/arduino-goes-pro