Coding pictures with Shoebot

Video thumbnail (Frame 0) Video thumbnail (Frame 412) Video thumbnail (Frame 977) Video thumbnail (Frame 3577) Video thumbnail (Frame 3952) Video thumbnail (Frame 6102) Video thumbnail (Frame 8087) Video thumbnail (Frame 10737) Video thumbnail (Frame 11102) Video thumbnail (Frame 13205) Video thumbnail (Frame 14907) Video thumbnail (Frame 16182)
Video in TIB AV-Portal: Coding pictures with Shoebot

Formal Metadata

Coding pictures with Shoebot
Title of Series
Part Number
Number of Parts
CC Attribution - ShareAlike 3.0 Unported:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal and non-commercial purpose as long as the work is attributed to the author in the manner specified by the author or licensor and the work or content is shared also in adapted form only under the conditions of this license.
Release Date

Content Metadata

Subject Area
Shoebot is a graphics robot with which you can create complex images and animations using a very simple syntax on top of the Python programming language. It is specifically aimed at designers and artists who want to incorporate code into their creations, but it also provides for a good educational framework for introducing code-based approaches, with a simple interface and quick image-based results.
Keywords Libre Graphics Meeting (LGM)
Laptop Point (geometry) Computer animation Traffic reporting
Laptop Axiom of choice Functional programming Letterpress printing Similarity (geometry) Set (mathematics) Drop (liquid) Medical imaging Cuboid Damping Physical system Scripting language Programming language Graph (mathematics) Interface (computing) Projective plane Instance (computer science) Cartesian coordinate system Vector graphics Process (computing) Computer animation Integrated development environment Personal digital assistant Website Library (computing)
Scripting language Programming language Email State of matter Code Software developer Projective plane Electronic mailing list Student's t-test Cartesian coordinate system Front and back ends Revision control Process (computing) Computer animation Internet service provider Window Computer architecture
Presentation of a group Pixel Spline (mathematics) Code Spiral Function (mathematics) Graph coloring Computer programming Computer icon Neuroinformatik Number Medical imaging Different (Kate Ryan album) Cuboid Software framework Covering space Scripting language Software developer Feedback Projective plane Fitness function Bit Instance (computer science) Computer animation Integrated development environment Visualization (computer graphics) Video game Text editor Right angle Quicksort PRINCE2 Library (computing)
Server (computing) Computer animation Root Demo (music) Hacker (term) Network socket Sinc function
Laptop Scripting language Module (mathematics) Server (computing) Distribution (mathematics) Information Multiplication sign Function (mathematics) Complete metric space Cartesian coordinate system Computer programming Medical imaging Frequency Mathematics Computer animation Integrated development environment Visualization (computer graphics) Software Network socket Parametrische Erregung Window
Scripting language Laptop Medical imaging Computer animation Electronic mailing list Set (mathematics) Website Parameter (computer programming) Function (mathematics) Data conversion Library (computing)
Computer animation Physical system
and need to talk about Schubert and which
is uh reports of notebooks there which was talked about and talked this morning by Friedrich Lucas and don't and I seriously hope you've seen it and because a lot of the points then going to gloss over
were talk about their own it is for those who haven't seen it's an environment to be able to code images in simplified Python cold and lead to talk about the more technical aspects of sure about and a little demonstration as well of what it can do and it
started as a person and academic project while I was doing my MA and what I needed a graph kind of graphics back and forth typographic application I was doing and that notebooks is definitely the that the application of choice because I did work with processing before but processing is not that well suited for prints whereas notebooks and had built it well native support for vector graphics however it was Michael Wessex only and that this was 3 years ago so there was no no box to and at the time and that what was also I thought a nice exercise to try and couldn't application from scratch in the meantime I got addicted to it but that's another thing and so the project started in 2007 that is 3 years ago and then what I wanted was to and provide access to the full of the most uh the biggest set of notebooks functionality directly in the new Linux systems and as it the bonus would be droplets which into then but it was the last year draw what is a language on which box was based and it has some similarities as well and that 1 really important thing was command line interface because that's no box has 1 as well but there was 1 technical detail is that as assistance to depend on cookware the my quest throwing libraries and had to do it is OK on Mac but on specially on the Linux you don't want to to load the whole interface for a command line script and if you actually want to do stuff that runs quickly or that you want to use it on a website for instance and you wanted to load this few as this you dependencies as possible so this was the goal of the project and that this is what it looks like
now and you had this simple ID which is the edit and it runs through what's scripts through a plug-in that we've developed and there you see you would see the up and the current state of the
project is worth a small team were a handful of developers and we call as we go and as we need we have quite the anarchic development processes are not really disciplined and that's something that we'd really like to improve and it has been rewritten wants to change the architecture it's been rewritten again let's see how that goes and then the the idea of Schubert's as well is not Tuesday is stick to the mailbox language and 1 graphics back and so the 1st rewrite last year and makes it possible for anyone to just going to code and and provide support for other languages and other graphics backends without having to change the whole applications I won't problem that we have is that we don't have that many you what we don't have users and that's the problem you have a kind of developer-centric approach it's just the things that are metric to us and every once in a while we get someone in the mailing list that says hey this would be cool and that makes this really really happy because then we we feel useful and we don't feel such so it's egotistical that we're discussing for us and it started as a clue Linux project but now there is already a Windows version of what you can do for because I forgot to include the URL which is called sprites has a nice a great effort by a teacher who's also using should books to to introduces students to code on the inside and again getting a little
technical but I know some of you like is it uses Cairo for them for the of rendering it's it's a wonderful framework for for instance the known correct me if I'm wrong but I think the bloom desktop is rendered mostly with cattle and then that enables us to provide an output with non SCG PDFs PostScript and bit-mapped we also use g edits as the IDE because and walk it's a good approach to have so what is says there's a Amini ideally you want you want to if you want to come to design and tell them hey you wanna start with codes you don't want to show them eclipse or similar things you just want to show what is needed and you just need a simple text editor to get started on a talk by phone because there 4 for and begin introducing people to programming my personal experience and the last thing I you people agree that Python is really great for introducing programming continents and that it has access to most of them in the box great libraries which allow it to work importance Fiji manipulated and then exported you can use it spiral splines you can do those wonderful things with colors that were shown this morning and much more and then you can use
you bought for phrases life performance and it's and besides creating static images you can create animations that's something that we're also trying to improve over the last 3 right the speed so that it can you be used reliably it's I'll actually might the my favorite use it is for for prince you you can actually scripts images and then create a CG sort PDS or what have you for example the cover of the graphics magazine this tank illustration it said on which you but if you squint which I wish it would be more visible but it's these are a little bit so each little pixel actually says reprographics object was more visible and this was done shoebox and it's 1 of the possible uses for icon workflow this and also included Jacob from the tunnel project and after watching genomics presentation this morning she what is a natural fit for those of scripting issues that that were mentioned with Inkscape because it can just create a simple Python script important SVG and say I want to sparse for instance to have this color and then go along the and to create 300 different icons with different colors here and there and that's actually really really simple to do it you want and then finally education like like those mentioned by the number of developers this morning this is a really good way to teach programming to people who don't come from any programming background specifically because once you try to introduce to Python and you show them a command line you're losing a lot there and if you give them an environment where they get immediate visual feedback that's really makes a difference as far as for motivating them to look more and how much they can get from their computers and I have a little
demo of 1 of the the lesser-known features of of Schubert's but the 1 that really gets me happy that the roots that was that works there which
is the socket server that this is actually a pretty hacking thing but since they're trying to balance this
between introduction and was showing some advanced stuff and what you see here is the window it's true that a and you might recognize it from there in a fixed OK about appeared on distribution itself an application programming environment but a visual 1 where you connect stuff through notes promotes like notebooks to but in a very different way at the same time and there was 1 thing that you can do with which you but is actually ranch about scripts on running its here from the command line which by the way you can also do just as well as with the the idea that has a complete command line interface that you can integrate into into your scripts and it can be imported is a Python module as well so it's really easy to create visualizations or any kind of image output from and your Python program so I would endanger is writing a really simple up I mean you can't really see it that well but what's going on is that you you can actually connect through a socket server uh to the true script itself the animation which is running and then changing the parametres introduction or any other application that consensus uh information through teach period UDP or what have you then you can see this those changes reflected
in the shoe script immediately plus you can do it remotely you can even do it over the network and you book but it's
about that at what should not really doesn't to of course is far from the full list but of course we are not that support is not really a priority because you have notebooks for that and dates it's pretty much what you need it you know if you do want to try to about it you can just get a library especially current by Carra from my courts even though I got it working few years ago and never touch it again but it does work and and the wonderful thing that Frederick show this morning where you have a script running and you can actually change the sliding text parameters that's not there yet as well and movie outputs and and we didn't have with the ffmpeg basically generating lots of images and I'm not sure if that's on the should what could be I think it's not but if you want to make a movie it's not that hard ffmpeg just takes you and combines the set of images that you can output from should and then create move from that but that's on quick to do list and this and this thing that
we really need you in the sense that we need users it's mostly just the developers and and mostly Hakka people there are doing this but we really need people to tell us what they are missing and what's wrong with you about and it's Harmeling this is a nice place I mean it's really low traffic we won't bother you with with the stupid conversations about performance and that he she really ask us something I'll be around please come and bite me if you're curious about anything or if you have anything to ask because you have no question is stupid there's there's the questions but it's a shame if you don't ask them to begin with and and if you do something with it anything as simple as that we really really want to know we want to feature that it's on the website we want to go to show it to the world and really would love to see what people are doing this and then I mention this missing slight than
system at the end well thank you that's that's here