Archive for the ‘Events’ Category

20100209 Breakpoint demolog, days 1-7

So the quest is set, the aim is clear: create something for Breakpoint 2010. There won’t be another opportunity; not at least under the Breakpoint umbrella.

The organizers have expressed publicly they don’t wish to organize yet another edition of nowadays biggest demoscene event, so it’s now or never! (At least until a new event this good takes off).

I already have had stuff of mine shown in their big screen. But that was before the true Big Screen, with capital letters. The 70 square meters one. I must release something, I said to myself.

Of course, this means that in a way, I’m going to break my own self-imposed rule (I will release things when they are done), but I’m working in a slightly pressurised scenario in order to finish the demo before setting off for the airport.

I have decided to keep a somewhat sporadic short demolog to keep people informed of what I’m doing, trace’s style. Hopefully it will help/force me to do things, daily, so that I don’t slack or procrastinate, and maybe you may help me too when/if I get stuck somewhere ;)

I’ll keep things short –this is probably going to be the longest post in the series– so that writing here doesn’t starve me of time to code.

This is the current status of the project:

  • the theme is approximately set, but I won’t disclose it here
  • I’m working on converting my on-its-own rudimentary OO-C synth (sorollet) to a bit less rudimentary C++ synth that can be embedded and interfaced, VSTi style, so that I can sequence everything from Renoise and play with parameters and settings in real time…
  • … and convert Renoise’s Song.xml (inside the .xrns file) to my own data file — kind of means recreating a simple tracker which follows Renoise conventions (Lines Per Beat for example). I have taken a look at the Song.xml file, extracting and using the relevant data seems easy, specially since Sorollet was already using a tracker style format.
  • So far I have managed to compile a VST plug-in in Linux. I had to solve several issues like having to compile for 32 bit while using a 64 bit OS, because Renoise is 32 bit too, gdb not willing to cooperate most of the times, the VST SDK docs being scarce and incomplete and not ready for Linux and etc, but I’m slowly progressing. Now I have a basic synth that can play sines or triangles, and transpose octaves. Awesomeness!
  • This means I’m not using an mp3 this time. Could this fit into an intro? Maybe, but I don’t want to sacrifice code readability in order to make it fit into an intro… I’ll be more than content with making a demo!
  • I need to find a way of producing a working Windows executable. Sadly, party organisers won’t allow a non-Windows .exe to enter the demo compo. Big BOOOOOOH for them. I have thought of different solutions, the easier is to install mingw in a VirtualBoxed Windows I’ve got, recompile my sources there and run the exe in my main machine, using wine. But I still have to try that, and I hope it works in Windows Vista :-S
  • I still haven’t thought about the visual part, I fear I’ll have to script it as in ye olde times –no time for writing a visual timeline manager–, but I will probably use Lua to alleviate the pain.

Complimentary screenshot:

Sorollet VST

More later.

20090204 Support Breakpoint

If you’re somehow into the demoscene I bet you already know about that: the biggest demoscene event lost support from the big companies who used to sponsor it. It has been almost on the verge of not being held this year, but thankfully some people are putting their money and their hands where their mouth is and already several donation campaigns and similar alternatives have been set, and even more important: they are working!

In a way I find this terribly positive. It helps us to stop totally depending on sponsorship from big corporations and makes us more independent and autonomous, and also value what really matters, and what we have.

Unfortunately I’m not going to attend Breakpoint 2009 for several reasons, but I just made a donation, if only to say thanks for:

  • The recording of previous years live acts, both when I was there and when I wasn’t, for being able to remember and also discover what happened respectively
  • The recording of seminars. There hasn’t been a year without at least one which particularly had interested me
  • The stimulus they provide to the demosceners of the world, to show their best ever productions at Easter, every year
  • At least two epic moments: Ultrasound’s Purple Motion’s Second Reality interpretation at bp05 and David Hasselhoff’s Big Band recreation of Jugi’s Onward (dope.mod) at bp05 as well. I’m still getting goosebumps when I remember about that!

So do your bit. I know several readers of this blog do watch the streams and seminars every year but never attend the party. Don’t take it for granted, show your appreciation. Say thanks even if you’re not going this year anyway. Or just go to the party. You’re still on time for buying reasonably priced tickets and supporting them with your presence. I bet there’s nothing more rewarding for a party organiser than a packed infodesk and long queues at the entrance the first day. Except, of course, awesome entries and having great atmosphere.

It’s all up to you/us.

20070313 London Ruby Users Group brings you back to uni

After three failed attempts, I managed to go to yesterday’s lrug meeting. It was intended to be a kind of experimental collective code review, so people would contribute with pieces of code and get it dissected and improved collectively. There was an special obsession with Hashes, most of the code submissions were improvements and/or workarounds for the Hash class. I understand it. Hashes are cool! The other topic was using continuations for (I believe) solving sudokus. Backtracing and fibonacci were also mentioned in the session, and Rob McKinnon made one of his quick presentations, this time proposing a way of getting data from different sources into a generic shareable format (and using upcoming as an specific example, and hpricot and hashes, of course!).

I must say it was pretty interesting, even if I got lost at some points (my ruby knowledge is still too poor). I specially got lost with the continuations stuff, which at the same time brought me back uni memories, of those times in which I skipped some lessons and then went back to the classroom with lots of knowledge gaps and tried to follow the teacher (with no luck, usually). Hehe! But fortunately, this time the teacher was interesting and deserved to be listened to.

This reminded me as well of the beauty of programming and talking about pure concepts and abstractions. It was ages since I felt that, so thanks to all who did it possible. I think we all need a good dose of abstraction from time to time. Keeps the brain working.

One of the books which was strongly and fervourously recommended is Structure and Interpretation of Computer Programs, which I believe I read some years ago (again, in the uni :-)). So you can see, ruby is not about rails only!

20070307 Being understood

(This is an extended version of the minispeech I gave at BarCampLondon2, “Being understood”, and here are the slides just in case you’re willing to see some bullet points goodness).

We are failing to make ourselves understood. We can be speaking the same language as our listeners and failing miserably in communicating even simple concepts properly.

I’ll show you a couple of real life examples, taken from a web design and development forum:

  1. Thread A: New website by xyz.
    When approaching a new website by xyz announcement, different people pay attention to different stuff. Designers which need to work with HTML tend to focus only on the design and the flashiness of the end result. On the other hand, developers and people which are really involved with the bare bones web tend to look minuciously at the implementation details and the use of technology, kind of ignoring the end users of the websites.Hence, you get answers like these ones:

    • Designer: it’s so cool! I like the design!
    • Concerned-with-standards person: it sucks! they use tables and it is not valid! they should use layers and CSS only!

    In truth, that website was visually great but the implementation was a terrible abomination.

    Normally there are lots of lurkers in the forums and they tend to read way more than they write. Occasionally, someone which is just starting in web development read this thread and got confusing information, which led to the next thread:

  2. Thread B: Help with a CSS design!!!
    I’m trying to do a CSS-with-layers-only design but I’m stuck on something. I’d like to show a list of prices, it should be something like this:

    LOREM IPSUM
    Dolor 10
    Amet 12

    I thought of solving it with something like this:

    <div class="table">
    	<div class="first_cell">
    		<div class="blue_3px_border">
    			LOREM
    		</div>
    		<div class="blue_3px_border">
    			IPSUM
    		</div>
    	</div>
    	<div class="row">
    		<div class="value">
    			Dolor
    		</div>
    		<div class="value">
    			10
    		</div>
    	</div>
    	<div class="row">
    		<div class="value">
    			Amet
    		</div>
    		<div class="value">
    			12
    		</div>
    	</div>
    </div>

    … but I’m having some problems for getting it all well aligned…

    Obviously someone got terribly confused here. There are real examples, like the main page of any forum using phorum’s default skin, which is built using div’s instead of using a table for what is a good table use.

And then we also have the magic word: accessible. That word. Each time it’s used nobody gets its meaning right. You can find discussions like this one:

  • this site is not accessible
  • … but I can access the site, what’s wrong with it?

… which should start ringing all the bells in our brains but instead of stopping and trying to clarify things before it’s too late, we just contribute to increase the uncertainty and fear with more misunderstandings, like for example these ones which are very common:

  • cookies will steal all the data from your computer
  • javascript will steal and publish your compromised pictures in flickr
    • and tag them
    • and geotag them
    • and send an e-mail to all your friends
    • ok, just joking!

There are multiple sources of confusion for each person, even technically savvy ones. While browsing any website, we get bombarded with lots of acronyms and terms which not only can be completely unknown to us but also increase the probabilities of misunderstanding the rest of the content, because we get confused and our brain is still trying to figure out what those terms mean. Think of things like:

  • RSS
  • CC
  • XFN
  • ATOM
  • Tag cloud
  • XML
  • AJAX
  • Web 2.0
  • W3C
  • WSG
  • WAI
  • etc

Is this something to worry about? I would say definitely YES, specially if we look at some absolutely subjective facts that I’ve come up with:

  • Only 5% of sites do not make my eyes bleed when looking at their source code
  • 60% of people claiming they follow standards do not really understand what it means
  • Is the result of trying to follow standards worse than a step backwards? Look at all the cases of:
    • divitis < div class=”table”>< /div>, because someone understood he should just use div’s in a tableless design
    • classitis < h2 class=”title02″> < /h2>, < div class=”h2″> </div>, because people don’t understand html semantics nor css really
    • self proclaimed “valid html generators” CMS’s and alike, e.g. Joomla!/Mambo, Postnuke, vBulletin, phpBB, subdreamer, etc – the default template from each one of them may pass an automated test but it’s not “valid HTML”, and not semantic HTML either (which I believe is way more important than passing an automated test). Unfortunately, people with limited technology knowledge may choose one of these believing they are doing the right thing, thus contributing to the global disaster.
  • W3c icons are perverted. Most of the times you find them in sites generated with the aforementioned CMS’s, when not in governmental websites, and a simple test shows zillions of errors, which creates these two feelings amongst concerned users:
    • they are kind of useless
    • they guarentee nothing

    Ultimately, non-technology people do not have a clue about the meaning of those icons, which are part of the confusing elements I referred to before

So what can we do?

I think we, as technologists, need to take a different approach. Although we are responsible for building the www, it’s not us who are going to use it most of the times. Common people are going to enter the content, to play with the systems, to use them, and maybe extend them. If we don’t make ourselves understood and aren’t able to educate them on how to do things properly, we are failing.

We need to think out of the box, putting ourselves in their place, and trying to understand their goals and concerns. And while some of their concerns may look ridiculous to our eyes, we must be patient and not overreact. It’s like the “THIS SITE SUCKS” response to a posting in a forum. It doesn’t help, it’s not constructive, and just produces frustration.

But convincing people to use something abstract is very, very hard. Nobody’s going to take your new and shiny standards-based approach if they have something which works for them and you just have philosophy and words theorising about the benefits of standards and all that stuff. You need to demonstrate movement: be an early adopter, stop theorising and start building practical solutions right now. Show real applications of standards which give real advantage over the old practices.

(Obviously, you’ll need to assume risks but that’s part of the game.)

Finally, the most important rule of all is: be accessible – yes, YOU! Do not scare people away with a cloud of meaningless (for them) words when they come to you, and speak their language, not yours.

————————————————–

Some context:

This was inspired by an article which Ricardo wrote, “The accessibility is inaccessible”. After lots of comments and the discussion which followed outside the blog comments, and reaching a point in which I was almost getting angry I realised there was something very wrong about the whole discussion, and the “Think outside the box” sentence made me understand why me and the rest of the people which was against Ricardo had got it wrong, because we were failing to think in “non developer terms”. Extrapolate it a bit more and you’ve got a fantastic source for a BarCamp talk :-)

20070219 BarCampLondon2 :after

Being understood image at BarCampLondon2

If you read my Thurday’s post, I was terribly undecided about what to talk about (doesn’t sound too good, heh!), but after forcing myself to revisit all the special and interesting issues or topics I have been involved in lately, I finally decided that I really needed to talk about communicating and more specially, making yourself understood. So here they are… the slides for Being Understood by Soledad Penadés. (I presume they are not self explanative so I’ll probably extend them in an article soon).

The presentation itself wasn’t nothing spectacular but I think it went terribly well, given that it was the first time I spoke to strangers and in english. We were a reduced number of people so we could have some interesting chat instead of being a traditional speech, which was pretty cool.

I tried to use keydoob for making the slides; keydoob is a little thingy that (obviously) mr.doob prepared for a couple of presentations he did, but as I couldn’t manage to find certain files and also I was beginning to feel the panic attack at 3AM I decided to go for some HTML+Javascript+CSS. I used Script.aculo.us and Prototype for the little Javascript involved, which could be thought of as absolutely overkill but anyway, it was a quick hack ;-)

The good thing of this is that as the slides are HTML with a css style sheet only for screen, if you try to print them they will appear as raw HTML with all the content still looking meaningful. In fact, if you use Firefox and have the Web Developer Toolbar installed, try deactivating all the linked styles – it should do :-)

BarCamp itself was great. It was very very motivating to see so many active people, so many presentations lined up, on so many different topics. I really liked that willing-to-share atmosphere. And in a way, it also confirmed that dream idea we had once of organising an event like that, where people could organise themselves and their timetable, wander around the spaces and join whatever they liked more. And the next half an hour, maybe present something.

So, congratulations and thanks to all the organisers and attendees for the insane amount of work required for bringing it all up and running :-)