This is intended for artists and designers?

How can this be for non-programmers?
I’ve been trying to get my hands around oF for quite a few days of my precious winter vacation, from morning till night and I dont see what is so great about oF if its this complicated to get started.

Is this just some joke?
I used C++ some years ago with visual studio and it was many times easier than this to start a simple program.

None of the tutorials online really explain why something is done, even Programming Interactivity ends every line saying “Oh, but THAT is why there are hundreds of books on blahblahblah, and this is just an introduction and not a full resource”

This is my request for a CLEAR and simple explanation of WHY you need to do this and that. Perhaps a video tutorial that explains why and how.

I can barely believe that this is the best way for artists and designers to make interactive work
-anon

Hi anon,

Is this just some joke?

Yup, it is a joke. You got us.

I used C++ some years ago with visual studio and it was many times easier than this to start a simple program.

To create an application with setup/update/draw loops, all input events mouse/keyboard etc. zero lines of code. Load an image: one line of code, load a video file: one line of code, setup a webcam: one line of code, load a sound file: one line of code. If you find it simpler to do it your own way please share your knowhow.

This is my request for a CLEAR and simple explanation of WHY you need to do this and that. Perhaps a video tutorial that explains why and how.

If you want to know why you need to do ‘this and that’, the answer is simples, cos that is probably the right thing to do. If you want more specific answers you’ll need more specific questions. Oh and it doesn’t hurt to say ‘please’.

I can barely believe that this is the best way for artists and designers to make interactive work

There are simpler ways. This won an honorary mention at the Ars Electronica a few years ago.
http://blog.fabrica.it/2008/09/08/appeel/

I hope this answers some of your questions.

well I would not consider OF being made for total beginners in programming. But if you have experience in Actionscript, Java, Processing or anything similar OF is a good starting point if you need better performance for realtime use or anything similar.

The OF community is really nice and if you post any questions in the forums you will most likely have some useful answers within a few hours. I myself study at artschool and I love c++ and OF. I also think that the examples show off everything you need, so instead of being a jerk you can simply ask what you want to know and people will help you, I promise :slight_smile:

Surely that is not a serious post right?

I used C++ some years ago with visual studio and it was many times easier than this to start a simple program.

Now THAT is definitely a joke :smiley:

Well, I’m afraid I must agree a bit with the topic starter. I’m coming from Processing and want to get into a bit more serious programming so I can get more freedom and more efficient performance. With my first looks at OF I became very enthusiastic. The examples look great and already give opportunities to do lots of stuff. But as soon as I try to do what I want to do with OF that is not in the examples, such as using real-time fft or using a second screen, everything gets exponentially difficult, and all documentation apparently becomes extremely fragmented.

I really have to go through a lot of steps to get simple things working which aren’t at hand in the examples, and sometimes it takes days to get you only got one little step further. Which eventually gets too time consuming when you want to work on artistic projects…

Of course its all still in an early pre-release state, so perhaps were expecting a bit too much for now already, but to get into a more serious level for artists these difficulties should be taken into consideration. I hope that will happen, because I think OF has great potential and I hope it will be able to become more artist friendly in the future… But for now it has only made my interest in using a ‘real’ programming language get satisfied, and leave me frustrated as I cant get to get the real (and still expectantly simple) things I want working within a humanly durable time span, which isn’t what OF is being developed for at all as far as I know. :wink:

synthetic_karma:

I understand your frustration, but you’ve only posted once on this forum (this post). More then documentation, OF is a community of people helping each other and sharing ideas and knowledge. To get the most out of it, you just need to start to ask for or offer help.

We’ve tried to design the code to be as simple as possible to get you started, but the truth is, it’s C++, It’s not that easy for beginners, and we are here to try to help you out.

But as soon as I try to do what I want to do with OF that is not in the examples, such as using real-time fft or using a second screen, everything gets exponentially difficult,

I’m not trying to discount your frustration, which is important to hear, but at the same time, you’ve got to get involved if you are having trouble using OF.

OF was NOT designed as a teaching tool, like p5, it was designed as a simple-as-possible-yet-hardcore library for people who want to do computational, artistic projects and although you aren’t able to use it to do what you want, it doesn’t mean that it’s impossible. There is info and experts in this forum re: FFT or fullscreen approaches. There are resources available, etc. But also keep in mind that it’s something we do because we love it – it’s free, meaning we get paid nothing to make this, and we do the best we can in terms of balancing our time between maintaining code, fixing bugs, producing up to date documentation, teaching workshops, etc. More then anything, we hang out on the forum and try to help people out.

so, my advice is, before you complain about being frustrated, that you try to reach out and see what this community is about. If it isn’t for you, fine, but at least give it a shot.

take care,
zach

ps: the larger picture is that we all struggle with this:

I really have to go through a lot of steps to get simple things working which aren’t at hand in the examples, and sometimes it takes days to get you only got one little step further. Which eventually gets too time consuming when you want to work on artistic projects…

the fact is, we are all trying to make work and juggle with the tools we use to make it. and if we all help each other and share, we can solve these problems much much faster. Your 1 day problem is someone else’s 10 minute problem, and vice versa. It’s not about the code even but about people working together.

I couldn’t agree more with Zach on this, (whom I’ve never met and don’t yet know for the record), it’s about a community of people. I’m pretty much a total novice, some stuff with processing, some stuff with Max and OF happens to have a nifty command built in which in processing I was having to write myself.

So right there I swapped over and guess what - I posted to the forum and got help which explained what I couldn’t previously understand. Last week I was lucky enough to be at the OF workshop in Newcastle and after seeing lots of examples and coming up with ideas for the brief of the workshop we started coding and in half a day had made an interactive tracking system.

Now, of course Memo, Joel Lewis and Chris Sugrue were there so help was to hand directly, but we were working in groups and people passed on info, dataprole was leading the way for the team I was in, but then I could pass info on to others and it became obvious that that’s the way it works. And, I mean, half a day to make that - Jokes!

For me, artistically I don’t have a reason to make that system it was just part of the workshop, but it showed clearly how powerful OF can be and as the saying goes with power comes responsibility - also I think we can say, comes trickiness.

Yes, it’s not super simple but then it’d restrict what you could do.
No it’s not always straightforward but name me something that is.
If you draw pictures with a pencil you start finding out a lot about pencils because it’s what you’re using to make your mark and so you care about it, what makes the mark good for you, what stroke to use etc.
I think programming of all descriptions surely fits into the same pattern. If you’re an artist who’s just going to use OF for one or two projects (like I imagine I will be) it’ll probably be a bit trying, there won’t be enough time to build up an understanding of the language and to be fair how could there be.

To get into anything you have to invest time. I won’t be finding programming in OF that easy not because OF is tricky but because I’m not investing enough time into learning it, which for me is alright, computer controlled/interfaced/interactive work is not my main thing, but if you want it to be yours then you’ve got to expect a learning curve no?

Only difference here is that that learning curve is supported by a community of people who strangely enough don’t give you a hard time for not knowing something yet and seem only to keen to lend the helping hand.

All power to them and to you - Get involved. :wink:

I truly admire the community from what Ive seen. I just havent posted here yet because I tend to try to figure things out myself before I ask questions. This can get in my way sometimes, but then again its hard to ask a question if you hardly know how to ask it because you hardly know how to formulate the problem.

Searching through the forums Ive been able to solve some problems already, but the solutions are often complicated. This makes it not very artist friendly. And for beginners can be discouraging. You find a solution for a small problem with a little search, but in the end you still have to work on it for hours to get it completely working because you have to figure out several other leaps you have to take.

But I’ll see if I can get more involved, because I really want to learn this language and love your philosophy. So you’ll see me more around in the future with a bit of luck. It will take a little more time than expected though… :wink:

great… hehe this is in fact a topic I have already discussed in real conversations as well…

I remember buying a book about game programming with c++ when I was around 15, so 10 years ago. Of course I didn’t understand one single word :slight_smile: But then after working with processing for some time I used openframeworks and it really is a huge difference, compared to my first steps on using c++. I was able to start right away, everything compiled without any troubles on OS X as well as on Windows and it is really, really fast compared to java, which is a language I never really liked.
Two weeks ago I was teaching a processing / openframeworks workshop and one student was working with video in MAX/MSP, but performance was too slow. so I suggested he should try the built in videoplayers within openframeworks. And within one day he had a proof of concept, that he was in fact able to develop the same thing in openframeworks at a very reasonable speed. He had never coded before, except for visual coding and could now use his interactive software at full speed. Of course I helped him with some basic compiler errors and stuff. But I still think that this is quite impressive and is what openframeworks is about.
So I do think it is not an easy, but the easiest tool you can get at the moment, for very serious development. Providing you have an idea and a little help.

cheers ph

First of all, let me say I’m a bit disappointed you (the topic starter) decided to create this topic, but won’t reply to the reactions others have posted. As Zach mentioned, OF is about a community and I think everyone is open to honest and usefull criticism. Maybe it can be used to adapt OF functions so they will be easier to use, or it might be used to adjust the description of openFrameworks, so new users know better what to expect of OF.

I can barely believe that this is the best way for artists and designers to make interactive work

I think you’re making an error in your way of thinking about interactive design.

When you use Photoshop, either as a beginner or a pro, you will create something visual, static and 2D (of course you can use perspective but the end product will be a 2D jpg/tif/png/etc.). When you create interactive work using OF (9or any other tool) you can create much more. It can be 2D displaying static data, but you can also create something 3D with audio playback and live video with face tracking.
There are too many options and too many ways to combine them to put them all in simple dropdown menus like in Photoshop.

Using frameworks like OF and Processing just isn’t as easy as using the Adobe Creative Suite apps. Learning programming takes time. You can’t learn how to do it overnight and there is nothing you can do to change that. Of course you can make these frameworks easier to use, but by doing so you will have to sacrifice things like speed or functionallity.

If you have no idea where to start with OF, I think you don’t need it (yet). Saying OF is also for designers doesn’t mean it can be used by all designers straight away. (Also, ‘designers’ is pretty broad, just think about graphic, fashion and interaction design. Three types of designers in ‘totally’ different fields).

If you can’t seem to use OF, try starting with something like Processing which is less complex. It will help you to create simple interactive stuff and will do for quite some time. When you feel you need more power you can come back to OF.

And try to see OF as more then just an application. I think Zach pretty much summed it up in his last remark:

the fact is, we are all trying to make work and juggle with the tools we use to make it. and if we all help each other and share, we can solve these problems much much faster. Your 1 day problem is someone else’s 10 minute problem, and vice versa. It’s not about the code even but about people working together.

I started learning OF since January, and yes for people coming from Actionscript and Processing like myself, can find it a bit complicated and frustrating at first, Class.h and Class.cpp files?!? WTF! even worst for me as this was the first time I saw C++ code, now I love it and I havent touch Processing since, only when I need to review the code I am porting to OF :wink:

People in the OF community are nice and always willing to help, so give it another go, and ask when you get stuck, BOMB the forum with questions, is that simple.

Most of the time I do copy and paste code, I am not sure how it works at first, but when you start modifying and playing with it, you will understand the “why”, as a matter of a fact, now that I am learning C++ I understand event better how Processing and Actionscript works…

rS

C++ is not the easiest language to learn. But OF is not designed as a tool to teach you how to program! I do agree that it’s pretty difficult to get started. Posting questions on this forum really helped me a lot. Love the way the community works, big thumbs up for that. So, try some examples, edit/modify them, if it doesn’t work…post a new topic!

For those with frustrations, and I am preaching to myself here too, anything that is worth doing is never easy. Turning this adage around and applying it to the current situation, the easier a programming language is to use, the less you can do with it. I have used everything from a TI-83 calculator to Max/MSP, and now OF, to program, and so far OF seems to has the best balance between power and ease of use. Is it hard for those of us who aren’t total code-monkeys? Absolutely. Is it worth it in the end? Most definitely. (Is it turning those of us still without code-monkey tendencies into code-monkeys? Quite possibly…) There are very few feelings in the world like getting an idea, not having any idea how to do it, and figuring it out, many tedious lines of code and compiler-errors later. OpenFrameworks is for designer-programmers who aren’t comfortable taking on the more intricate parts of OpenGL, but it is also only for designer-programmers who are willing to put up with the frustrations of C++ in order to gain that needed processing boost.

OpenFrameworks takes enough frustrations out of programming to make it fun. Keep up the good work.

It is clear that C ++ language is not the simpler lenguaje, however … for performance could be that more is needed in terms of programming creativity.

I also come from processing (here I learned to program in theory) and I cant deny that at the beginning OF is somewhat complicated. . (Cpp. H libs. To … thousand new things), but remember for more of that effort is still C++, dont think of how complicated its now better think about how difficult was before OF , think of having to import 10 packages, and a number of implementations to see video, photo or just to paint a pixel on the screen using openGL.

we can be artists, but if we deserve the stamp of digital artists should undoubtedly
strive to understand how something which is functioning, we can not expect the single line of code that ofMiracle.createMyAppPlease(“nice”). because I fear that there is still some time for these “tool”,

We are in the technologically advanced, enjoy every day of code. :lol:

PD: I apologize for my English, not the best but I’m still trying to learn. A big hug to the whole community of openFrameworks from Colombia.

hi anon, this is my 1st post by the way. i also used to struggle with this library. but u know what, after overcoming the initial hardships (took me long hard hours just to get my 1st app workin’), the experience was worth it. and its because of zach’s, theo’s, arturo’s, vanderlin’s, julapy’s, ascorbin’s, and every contributors’ unselfish help on the forums that changed my life. i’m not living on leftovers like i used to (i used to be unemployed and worthless for a couple of years), i now have a creative consulting business of my own, and it’s because of the love given by these caring and kind people on the forums (in the form of examples, tips, etc). THANKS A LOT GUYS!!! GOD BLESS U GUYS!!! U ROCK!!! :wink:

I love this post. This is what OF is all about.