Welcome to my crazy world and never say never, dear stranger!

March 23 - 2017 at 20h

Hello, all. Again.

Just checking in.

I am listening to a podcast called Startup, which is produced by a very interesting (in many ways) company called Gimlet Media

The podcast itself is interesting because it is super meta. It talks about the history of the podcast company behind it. Which is Gimlet Media and at the beginning, Startup was its only show. In short: it is pretty unique.

Well, I think that's almost all. See you!

January 29 - 2017 at 00h

Hi, I am back for another round!

I missed a month, sorry about that, but it's been crazy!

Also, ~pgadey, sorry I couldn't do the bake fixes you asked for, but I really haven't had time for anything but my own selfish plans these days :P

The Tavares' Show: Developments

I did the TOEFL

It was on 14 January, in Natal (~300km away from here).

The test was at 9am, I got in Natal at 5am, stayed in Aline's until 7:30am, missed a bus (not my fault, it was supposed to arrive at 7:45am), got it at 8:20am, missed a stop, got out at 8:50am at almost 1km from the place where the test was going to be applied. I had no idea where it was, so I google mapped my way there half walking half running just to get there at 8:59am, sweaty and nervous, asking in the worst imaginable accent "Where will be the TOEFL applied?". A guy who was talking in English to a group of students said "The TOEFL is here. Are you with us?" to which I replied "YES!" and he said "Are you sure?" proceeding to count the number of forms and number of students there (there were 10 forms and 9 students, guess who was the owner of the last form).

And here you can see the breakdown of my score:


[######################        ] 22/30


[########################      ] 24/30


[############################# ] 29/30


[##############################] 30/30


Required at MIT

[###############               ] 60/120

Required at TU Delft

[#######################       ] 90/120

ME (total)

[##########################    ] 105/120

How a skinny guy from Brazil applied to Netherlands' TU Delft Aerospace Engineering BSc

Dunno, but I did. Lets sit here and wait for the result.

Android Apps

Everybody's got to make some money, yeah? I'm working in apps for a few clients. I like using trello to manage my work (and let the clients interact).

TV Shows

As I said, I don't get much free time, but anyway I am watching a few shows on and off:

  • Jessica Jones (Complete: Season 1) (Rating: GOOD)
  • Luke Cage (Complete: 6/7 episodes) (Rating: FAIR)
  • Westworld (Complete: 1 episode) (Rating: WTF)
  • Orange Is The New Black (Complete: 1 episode) (Rating: GOOD)
  • ????????? (Complete: Quarter-episode) (Rating: my sister say its good, I don't even remember the name because I slept in the middle of the episode, but I liked what I saw)

Violin Tunes Learned

  • Hedwings Theme
  • A bit os Schinders' List
  • A bit of an Irish folk song

New Hardware

A lenovo k6. I like it.

November 20 - 2016 at 15h

So, it is Sunday...

Or at least it was when I was writing this post.


Sundays are days full of anticipation for the Mondays. Not a good anticipation, it is more like anxiety and the feeling that time is running out. But even Sundays can be productive and nice, if you try.

Enough of philosophical though about Sundays, lets pick it up where I left it last time.


Basic Training is over, I even got a pic of me with the symbolic soldier beret:

Yee! Finally.

Now I am working full time at the computing division (where else would I be?) fixing decade-old computers and network problems. Ugh.


And nooooowwwww the good bits!

  • I am working on an app for local food delivery
  • I am developing a better way for humans to generate and remember passwords
  • I've been biking to the cities around here
  • I am Still playing at every chance I get
  • I am studying hard for the SAT Subject Tests (going to do Math 2 & Physics or Biology). Goal: MIT
  • I am going to do the TOEFL sometime in January
October 16 - 2016 at 09h

Hello hello!

Finally, after many delays and all types of setbacks, I am in the last week of the Basic Training!

The last week, in the Brazilian Army, is comprised of the Camp. It's a week long camp designed to emulate battle conditions, in short: tough stuff. It starts tomorrow, but I have to be there today to finish preparing my bag and other stuff, I'll be leaving in a few hours.

Wish me luck and see you Friday or Saturday!

October 15 - 2016 at 10h

We have a new blog from ~tbp

Nice theme! Remembers me of the 2010s designs, before everything became flat...


Hey, this mosh thing is really awesome!


Seems like you like to work in games, ~tbp.

Update 2

Ohh, you are Brazilian too!

October 09 - 2016 at 11h

Hello guys!

I found out a shop here that sells Cordura fabric!

Why is that so good? Because I am going to make a complete set of bags for my bikepacking trips. I've already done two small ones with my prototype framebag (made from some spare fabric I had).

I will probably write about those trips later, but right now I am a bit out of time.

The thing with Cordura is that their fabrics are very resistant, and when you apply PU or acrylic resin over it you have got a impermeable fabric! Perfect for adventure bags.

For the design of the patterns I initially used the old and proven method of pen&paper, but then I discovered Valentina, which sounded like the perfect tool for that.


A few minutes ago I connected through ssh to our server and then, as usual, typed:


to which it replied:

pgadey pts/0 2016-10-04 15:02 (

root pts/8 2016-07-03 16:48 (mosh [6512])

asa pts/19 2016-06-01 09:13 ( via mosh [29818])

philips pts/35 2016-10-09 10:33 (

stark pts/36 2016-10-09 09:18 (mosh [21137])

so I thought, what is this thing everybody is using? Turns out it is the next evolution of remote access client/server, with predictive display and a lot of other cool features.

Check it out.

September 03 - 2016 at 05h


I haven't posted in quite a long time, but I am cooking two long posts that should be posted when I finish my basic army training (I'm pretty close to finishing, the camp is in two weeks).

I didn't have much free time in the basic, but when I finish it I will be back to my normal posting rate (and probably the usual topics too).

That said, I didn't quite stop taking notes and keeping my journal, I have it all on paper ;) I just read that ~pgadey does the same too and he has quite a few volumes worth of journal material! WOW!

Just so this post has a bit of real content, here goes a book suggestion:

  • Miles from Nowhere

It is about a couple of bicyclers who did a 'round the world trip! I'm still reading it, but so far it is an awesome book!

July 13 - 2016 at 09h

And I have dived in tons of work in the meantime.

I haven't even looked at what you guys are doing D:

goes back to work

June 16 - 2016 at 22h

Hey guys.

Late here and I am just passing through, so I wont put links in this one.

New version of elementaryOS

The beta for elementaryOS Loki (0.4) was launched a while ago, it is looking nice.

I already downloaded it, but I was too busy to install and try it.


A lot. I blame it on biking.

To pgadey (and everyone)

If you can, get a nice bike! It is great!

See you soon!

May 31 - 2016 at 18h

Hello all!

pgadey keeps rocking!

Be sure to check out the new stuff he posted!

I loved the pics on the nature notes!

NOTE: I'm using urls with just // at the beginning now

Which is your main computer?

pgadey told us what laptop he uses in his micro blog.

My turn! My laptop is a 15" Inspiron 5547 A07. I don't recommend this 15" stuff from Dell because they just make the 14" and scale it, resulting in a very weak build.

Bye bye guys & gals!

May 31 - 2016 at 18h

I should start paying more attention to the stuff I write... some of the grammar mistakes and typos I make are horrible!

May 31 - 2016 at 06h

It is inspiring seeing the club full of life :)

And do check this one liner by ~pgadey!

May 31 - 2016 at 04h

Hi guys!

Today I am going to talk a bit about me, about bikes and about the intersection between me and the bikes! Aside from that, I will talk about a few other things too, here is a quick summary for you:

  • My bike
  • My story with bikes
  • Why I like bikes
  • Bikes/Mountain Bikes
  • Bikepacking
  • DSP, my job in it
  • The book I am reading
  • I am hungry!
  • A friend is buying me the new pokémon!
  • Game engines, blender, BDX.
  • Tea
  • Why is this post so big??
  • My art
  • Curious names of stuff in the bike in portuguese
  • Freeciv
  • Violin & the joy of playing on the streets

My Bike

This all started a few weeks back when I finally got enough courage to check in which state my old bike was. It is a very cheap bike, maybe around the $100-$200, but I was excited to pedal again! The overall state of the bike was okay-ish (wheels were a bit off) but there was a major problem: the screw that connects the handlebar to the fork was unusable (aside from the fact that using a screw for that is already a sign that the frame is not of the same size as the fork), so the handlebar did not move the fork as it was supposed to!

I got around that making a few extra holes in the frame and putting a few extra screws, but it was a completely makeshift solution! I was not happy with it, neither very confident (specially around cars or bigger vehicles).

So, I used it a bit but then started looking at buying a better bike and from there things went on and I got to know bikes a lot better, I can say... they are awesome animals :P!

My Story with Bikes

Bikes were in my life since a very early age. I got my first bicycle when me my family lived in an apartment, but the building had a nice (concrete) playground that was pretty good to pedal on. It was also there that I flew out of the bike and landed on concrete a few times.

I kept biking a few years but then almost completely stopped until around five years back, when my dad got me the cheap bike I talked about and we went biking a few times (me, my brother and my dad).

And then I stopped again (we all did), mainly due to the fact that our bikes were too cheap and always got some kind of problem when we wanted to used them.

Why I like bikes

I will just dump here a few reasons I like bikes and the idea of using them as transportation.

  • They cause few accidents
  • Accidents involving only bikes are usually not fatal
  • It is fun to use them
  • They are cheaper
  • Pedaling is an exercise!

Summing up all this, I like to believe bikes are the best means of transportation for most of the use cases.

Bikes & Mountain Bikes

There are a lot of types of bikes, speed bikes, mountain bikes, hybrid bikes! All kinds of them!

Each type of bike has one or a few use cases in mind. For example, comfort bikes are supposed to be fun to ride and comfortable, while mountain bikes should be resistant and deal well with sudden impacts due to terrain.

I am specially interested in mountain bikes because they allow you to ride in non-urban areas (like where I live) and they can handle the usual urban areas. Not in the most efficient way, of course, but they can do what, for example, speed bikes can not do: take you where you want without you having to worry too much about terrain.

Aside from these specializations, most bikes are the same, they have:

  • two wheels
  • two hubs (where the wheels meet the hull)
  • a frame (the "hull")
  • a handlebar
  • a lot of other stuff

but the important part here is that there are industry standards for most of this stuff, so you can create the bike that best suits you if you have enough knowledge.


Bikepacking is where biking meets backpacking. I already said I like biking, now I am going to say why I like backpacking. And from there you can easily guess I love the idea of bikepacking.

First of all backpacking gives you the ultimate sense of freedom, of being yourself and is also a great way of traveling and seeing the world without the hype and extreme capitalism that comes with the usual traveling methods and destinations.

Then, backpacking makes you happy. Probably due to the said above, but there is also more to that, a more primordial reason: the human body is tuned for the nomad life humans are happy while traveling and this is probably instinctive.


What Digital Signal Processing has to do with bikes? In your life, probably nothing. In mine, it was used for a freelance job I did and it is how I got some extra money for a bike, so thanks DSP I guess.


I said this a few times here before, some of the stuff I read or watch does not sound like me or like what I do at all.

I am reading one of those "teens" books called "Trust Me, I am Lying". Not very good but not the worst ever, and it entertains me before I go to sleep so it is all good.

I was hungry

And then I made something to eat. Cooking is awesome. I will learn to cook more stuff (chew-mein/yakisoba, I am looking at yahhh)! I cook, you should too! Go cook! Long life to cooking!


A friend is going to buy me the new Pokémon! Thanks Biaah! (I bought her a toaster, so this is more like an exchange)


I think I said here before:


Okay. Now the entire world knows! Just to be sure though...


And one of those days I was searching for game engines (I always do, because there is always something new), and I stumbled across this magnificent thing called bdx.

The idea is simple but super effective. Get libgdx, use it as runtime and use Blender as an game editor!

The result is a very easy to mod engine where you can extend it in any way you want, and it is also 100% open source!

I tried it in a little game about space, and I really recommend it! If any of you (~caasi?) likes making games/would like to make games, check this out!


Tea > Coffee

Why is This Post so Big?

I have no idea. I was asking this myself... I guess I am just in the mood for writing... or maybe it is due to the fact I have been away for too long and too much stuff happened? I dunno.


Some folks say there are two very distinct types of intelligence (actually they say there are more than two, but that is not the point). Artistic and logical. Up until there okay, but then these folks usually try to separate and make them the most different stuff. They create different learning paths for each one. They say people are born with talent for one of those.

Maybe that is true, but all this talk does is it makes people who are good in one of those things feel like they should not be trying to learn the other. That is absolutely no good. Life is short and we should (as someone here in the tilde said before), be always learning meaningful stuff. And what is meaningful? It is a complex topic, but if you find it cool, that is sufficient.

All this introduction to say I do not embrace the stereotype of programmers not being artists, not being writers, not doing sports... and also to post some of my own art here :P

The Girl in Red

Digital painting, made with MyPaint.

The Girl in Red

Concept Art for a Samurai

Digital painting, made with MyPaint.

Concept Art for a Samurai


3D Model, made with Blender.


Bike Stuff in Portuguese

While I was researching about bikes, I found some curious things about translations.

First one, and the funniest. We all know that "frame" has a lot of meanings, but they are mostly about two things: painting medium and related/structure or hull and related.

In Portuguese, the hull (frame) of the bicycle is called "quadro". Quadro in Portuguese is the name of the painting medium, and not in any way related to structure.

Second one, the hubs are called in Portuguese "cubos", which means cubes. The only thing "cubos" and "hubs" have in common? They sound very alike. What do I think? Someone said hub and someone heard "cubo".

Third one, and I am not sure if this is universal, but bikes in Portuguese are sometimes called "magrelas" (skinnies, as in a skinny person). It is worth noting that words in Portuguese have gender, so "magrela" is feminine (the masculine one being "magrelo").


The multiplayer is great!

Violin & The Joy of Playing on the Streets

One of the most gratifying things one can do is play on the streets. Its simply amazing. I am not sure if I said this before, but here where I live we have small island in the city's river. People usually go there for sports (it is a great location, could be better taken care of but it is great anyway). I go there to play (also to run/bike), and it is absolutely amazing, specially at sunset...


May 19 - 2016 at 17h


A fellow Brazilian is here!

Hey there ~gioabel!

He is from further down south, in the south-west region, close to São Paulo. I actually have been there only once or twice (but never in his city).

Bye bye!

May 11 - 2016 at 04h

Gauntlet's log page is beautiful.

May 04 - 2016 at 00h

I am alive and Rust-ing.

(Piston, 3d stuff and more 3d stuff)

April 27 - 2016 at 14h

I am reading on DSPs.

April 20 - 2016 at 21h

Hello folks!

I am writing an android app for a friend to help her write her blog.

The app works by pushing stuff into a GitHub repository and then Travis CI is used o build it with bake.

And since we are talking about android... supporting lots of version is a pain! But not a big one!

The neat thing about having the app push to a git repo is that you are not limited to pushing content, you can push templates and other stuff.

Also, check out Stugan if you are a game developer! And check it out too if you aren't! Great folks.


I'm watching:

Idea I just had

Make a homepage that just says what I am doing at the moment and I can update things with a little shell script? I like the idea.

It could also make it show delta of the changes in some way.

See you! Sleep time!

April 14 - 2016 at 09h

This gal is awesome!

I am reading her Master's thesis.

April 04 - 2016 at 03h

This is a gaming post. Not my usual roguelike gaming, this is mainstream gaming.


I recently installed a bunch of emulators in my machine.

  • CEN64
  • Mupen64Plus
  • Project64 (sorry, no links because the makers decided distributing malware as a great idea)
  • PCSX2

My goal was to play two games: Shadow of the Colossus and Ocarina of Time.


CEN64 looks awesome, but is too slow on my laptop to be playable.

Mupen looks... passable, but is very easily configurable and runs natively on Linux.

Project64 (1.6) looks also pretty good, is fast, but I need to run it on windows/wine and wine+elementary OS aren't a great combination.

In the end I'm playing Ocarina on Mupen and I'm pretty happy with the results.

Shadow of the Colossus is playable on pcsx2 on Linux, but runs a bit better on windows (native). I'm playing on windows and so far, no slowdowns (even in the colossi).

I recommend both games, if you guys like playing this stuff.

April 04 - 2016 at 03h

So, I made a post.

It was a nice, big, very personal, detailed post. There were lots of stuff in it. And then, I hit my external wifi adapter with my clumsy and very alive hands. SSH does not like when people hit their wifi devices and said

Bad boy! I'm breaking the connection!

And so it did. The connection dropped and now the emacs that I was using to write my very nice post was trapped in eternal limbo. I even tried to start the emacs server inside it with some black magic:

echo -e "\exserver-start\n" > /proc/`pidof emacs`/fd/0

But my sorcery wasn't strong enough, the pseudo-terminal won the battle. Goodbye, dear emacs process. Rest in peace.

March 21 - 2016 at 14h

Hello folks!

Q. What have you been up to?

A. Lots of pixelart animations.

Q. Any tips?

A. Instead of trying to copy/create lots static poses in the same place, use a bigger canvas and really make things move around. Its way easier to think about it if you work this way.

Bye bye!

March 07 - 2016 at 10h

Hello folks!

The avid readers know: I love to run.

The bad

And during one of those runs, I injured my knee. Just a small ligament injury, but due to the fact that ligaments have a very small amount of blood around them, they take a lot of time to heal. I hope to be back on track today, but just walking :/

The good

I am watching CS50 lectures from Harvard. Basic stuff (nothing is too basic you can't afford to review it) so far but awesome professor!

Boat design is taking off, I'll make a model and maybe post some pics for you.

Got a reliable partner for my runs!

The ugly

Turned off phone on an interviewer. Thanks to my awesome people skills (nope!) nothing bad came out of this.

That's all for today! dives into the wonderful world of computer science

February 22 - 2016 at 21h

I am thinking about building a sailboat again.

Seems like a very nice medium-term goal. Long term being traveling the world in it hehe

If I am still thinking about this next month, there is a great chance it will happen.

Lets wait and see. And in the meantime, studying about navigation can't hurt, can it?

February 22 - 2016 at 02h

Hello hello!

How are you all doing?

I see some new folks and some new stuff, uh?


~greymtr created chat logs!

By the way, todays xkcd is about bots. Check it out!


Finally got around writing some new stuff for flow (game)!

TV Series

I am watching The Mentalist!

I like it. This is exactly my type* of tv series:

  • Super fake genius who is almost always right (it has to be super fake)
  • Very light romance with tons of fun stuff going on
  • Stands in a blurred line between comedy and action
  • Cool characters. Happy characters. People who are never out of options and never too afraid.

* there is other type of tv series I really like (not just series, stories in general): those that are very realistic but with one or more realistic but unusual character. An example is Breaking Bad. Walter White is a realistic character, but a very unusual one.

Super tired

The Mosquitoes, who I think came directly FROM HELL completely messed up with all my plans of getting back to a regular sleep cycle. I just can't sleep at night because they won't let me.

So I sleep during the day and here am I, 4:37 in the morning, completely awake since yesterday.

This is super bad :/

I actually have a mosquito net in my net (random img from the net, pardon me for the hotlink) but it doesn't help much because:

  1. The damn mosquitoes get in!
  2. They make a super high-pitched noise. Imagine a few hundred of them making this noise. Its terrible.
  3. If you touch the surface of the mosquito net, it's like touching the surface of a river full of piranhas.

In short:


February 14 - 2016 at 22h

Featuring my brother, Paulo:

Yeah, I'm not great with the guitar. It's me on the base.

February 14 - 2016 at 03h

Using the superb Literate CoffeeScript I made a little tutorial style RK4 integrator, check it out!

Learn RK4

February 13 - 2016 at 02h

In a moment of great clarity in the early morning, while reading about functional programming, a striking thought passed through my mind:

What is so great about bash programming/UNIX philosophy?

It's functional programming!

I am still amazed by this revelation.

February 13 - 2016 at 00h
Beautiful is better than ugly
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one - and preferably only one - obvious way to do it.
Although that way may not be obvious at first unless you're Dutch.
Now is better than never.
Although never is often better than "right" now.
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea - let's do more of those!
  • Tim Peter
February 12 - 2016 at 01h

From time to time I write music.

Here are two unfinished pieces:

February 12 - 2016 at 00h

So... it looks like there weren't any big problems.

Except all the files begin re-created and completely fucking up with the post dates.

It was an elegant solution... no config files, nothing, just pure UNIX.

But it had problems.

Now I have problems.

And as always: I had already coded 99% of what was needed to fix this, but didn't noticed I had.

Introducing bake's fixed timestamps

When you are posting using bake, you use plain Markdown. Except for two things:

  1. you can put a line as the following in the beginning of the file:

    @February 11 - 2016 at 23h

    thada! Bake will automatically override the internal date with whatever string you put there.

  2. you can use signatures:


    also at the start of the file.

Easy but nice solution

Since I already have support for this @-notation for dates, why not just create the line if it does not exist? Easy as that. Check if it exists, if it does leave it alone, if it doesn't, insert it and write back to the file. Easy.

Let my cry a bit here


and some more


now I'm okay!

This is history happening right here folks!


February 11 - 2016 at 23h

I know I should have done this way way way back.

February 11 - 2016 at 23h

It is a famous quote, you all know it, but I will say it anyway:

Sometimes, the elegant implementation is a function. Not a method. Not a class. Not a framework. Just a function.

  • John Carmack
February 11 - 2016 at 21h

Gravitational waves, yay! Now, wrap drive!

February 11 - 2016 at 00h
February 11 - 2016 at 00h

Hello, hello!

I'm working on a portfolio.

I'm making it using zero-framework JavaScript, and one of the few things I noticed is that it's much easier to do that than it was five years ago. APIs now work much better across browsers and give much more consistent results.

Mobile still a pain, but less painful. My design is still not perfect, but less imperfect. Internet Explorer still exists, but less used.

Things are looking good!

February 11 - 2016 at 00h

Hello guys!

Lets do a nice Sunday update, shall we?

General Stuff

Stuff I am doing and haven't told you:

  • learning Chinese (Mandarin);

by the way, have you ever heard of Anki? It's great (for many things)!

heard some one shouting "finally!"? No? I must be hearing things.

Da gud staf

Bad Stuff

  • I'm sleeping too late, again :/
  • Not 100% happy about some parts of flow's code.

~ Stuff

A quote from ~pgadey

Well designed soft-ware is really pleasant. It fits perfectly.

and the inverse is also valid!

Badly designed soft-ware is really unpleasant. It just does not fit.

An answer to ~Point

About that editor thing.

I really like the idea of making such an editor, but first let me elaborate on the main differences between editors and say some other things.

Well, do you feel that vim and EMACS are very different? They are, at the surface, but when you abstract a bit, it's just some keybindings around the central engine and something to display it. EMACS doesn't exactly fit into this definition because it is a lisp machine, but overall most editors fit very well inside this definition.

Of course some of the have some unique features (awesome features!). But almost all of them have the same problem:

The Problem

The problem with editors is just one: the interface is too tightly coupled with the engine. You can't (easily) change how things work, and most editors just assume it will work in a fixed way. Old editors do this more often, because of lots of legacy code that no one dares to touch. I speak this from experience with vim and EMACS.

(Visual)Interface is a minor problem, most editors get it right and have pretty configurable interfaces.

What is missing

So, what is missing from all of this? A truly configurable editor. EMACS is pretty damn configurable, but past a certain point the assumptions start (C-c, C-m, C-i). Atom has a VERY configurable interface, but you know what? It has core unchangeable keybindings. vim is all about working with it the way it is, not about configuration, you still can change a lot but it is hard!

I recently found howl, which is simply the most configurable editor I have ever found (not in the visual interface) but even it still had some hard coded stuff. The difference? The code was very simple, so I could dive deeper and make it work just like I liked it.

What I suggest?

Instead of making a new editor - everybody does that at some point - what should be made?

An editor-kit! A piece of software with few dependencies, strong documentation and easy to use that you could use to make your own editor in just a day or something like that.

But am I going to code that? Not now. I have a lot of projects going on right now and just found my almost-editor-kit editor.

An excellent Fake-Review by ~greymtr

Star Wars review, check it out (fake spoilers alert)!

New guy?


Join #mud

I created the #mud channel.

More Stuff


I installed some pinyin input methods! (it was a pain to do it on elementary)

Aaaand, fixed a long standing problem that caused my laptop to not suspend. Turns out it was laptop-mode-tools OR tlp. Both. I don't know.


pgadey for the portfolio tips!


February 11 - 2016 at 00h

I like to create a file called @ in the home directory of my TV Series and write there in which episode/time I currently am, to avoid having to re watch 5min to find out.

#nonsense #stuff #littlethings

February 11 - 2016 at 00h

Yesterday I met ~caasi/, but do you know how I met him? I met him using the write command, which looks something like:

write username

And it simply drops whatever you enter in stdin directly to the other person's terminal. Not very pretty. Specially not pretty when you are using vim and someone drops you a message.

I decided that using mail would be better for communication, so I could do:

sendmail username

and then type my message the same way I would do with write, but this time the other guy could read it asynchronously, when he wanted to, using the mail tool.

Of course, using write is stil the best way to drop a short burst of text very fast to someone else. But for now on I will use it just to send the message


It means Check Your Mail!

As soon as I finish my current project, I'll see if it's possible to write a tool similiar to write, but it would just drop a BEL character and then you could proceed to check your mail (most terminals flash when they receive a BEL). This tool would be called poke.

February 11 - 2016 at 00h

Now bake orders the blog posts by update time, as it should.

The Story Behind

First, I assumed that readdir() should order them already, but I soon dicovered that this was not the case. Then, I went to order then by myself. I was going to order them by creation time... but... *nix has no creation time stored anywhere.

It got me thinking and soon I realized: of couse I shouldn't order by creation time! When I post an update post, it's obvious that it should go up and stay there, makes much more sense. Thing is, this is one of that things most people do wrong (e.g.: most blog systems do not change order when a post is updated) but you didn't realize it until something makes you think about it.

Enjoy the latest post on top!

February 11 - 2016 at 00h

Hello hello!

φlips is genius! Thank you ~pgadey! I think I'll start using it...

February 11 - 2016 at 00h

Hello hello!
Long time no see!
But here I am,
again to tell
about what
you should be!

"Week" Summary

Ordered by time lost:

  1. Windows 10 f***ed with my Linux boot loader.
  2. Windows 10 installed.
  3. Windows 10 downloaded.
  4. Windows 10 used.
  5. Windows 10 booted up.
  6. Downloaded Ubuntu to fix up my Linux boot loader.
  7. Tried setting up ssh on windows 10. (not windows' fault, but I'm an evil bastard and I put it here anyway)

Now, time gained:

  1. Made Short Stories
  2. True UEFI booting, not the Half-BIOS/Half-UEFI I had before
  3. Lips was here on Saturday!
  4. Walked down the street fiddling my fiddle!
  5. Made a nicer version of my User Friendly downloader:


# Convert a .gif to .png
uf_convert () {
    convert -verbose -coalesce $1 $2
    rm $1

uf_date () {
    date=`date +"${date_format}" -d "${start_date} +${n} days"`
    echo $date

# Download a uf and save it to a .gif
uf_download () {
    date=`uf_date $n`

    echo "Downloading $n from ${url}..."

    image=`wget $url -q -O- | grep -o "\+\.gif"`
    if [ "$image" != "" ]; then
        if [ ! -f "${n}.png" ]; then
            echo "Downloading number $n"
            wget $image -O "${n}.gif" -q
            uf_convert ${n}.gif ${n}.png
        return 1

    return 0

if [ "$1" == "-s" ]; then
    echo "It's located at `uf_date $2`"

echo "Reading directory..."


for file in `ls`; do
    if [[ "${file}" =~ ^[0-9]+\.png$ ]]; then
        num=`echo $file | grep -o "[0-9]\+"`
    if [ "${num}" != "" ]; then
        if [ $high -lt $num ]; then

let "number++"

echo "Starting at $number"

while [ $? != 1 ]; do
    uf_download $number
    let "number++"

Now, go and write some short stories! Go speed racer, go! (I miss it man!)

February 11 - 2016 at 00h

Announcing a new theme, an really ctrl-c looking one! Also used it to test multiple blogs, you never know if things are gonna broke if you don't try them (but hey! it worked just fine).


It didn't worked fine as I expected, because I forgot that when you put the blog in a directory that isn't ~username/ you need to set on your bakefile:

This is only needed to make permalinks work outside the main directory.

Now I think I'm free to make another totally nonsense tool. (it has to do with nethack, guys!) But I'll never stop talking about bake and how awesome it is, because you know... my child.

If you want to get bake and try it yourself, feel free to go over /home/philips/bin/ and get a copy.

February 11 - 2016 at 00h

I'm working on baker the Rust version of bake.

I was working on file ordering and... rust stable can't compile code that uses file accessing/modifying time, because it's an unstable feature (it uses u64 for time, but they didn't decided yet if there should be a more specific type for time).

And that's why the 0.1 won't order posts in the right order, but hopefully they will fix that soon.


February 11 - 2016 at 00h

Aspelling posts sure feels good.

Worst error of them all:

Spelling thought as tought.

February 11 - 2016 at 00h

This is a real post guuuuys!


Today my web surfing was all based around things like:

  • Metal
  • Vulkan
  • ...

these are technologies that try to improve the performance of applications that rely on the GPU by making the layer between application and hardware smaller and less bloated.

The idea is really great, as it also throws away a lot of unnecessary legacy code and make people want to develop with these new technologies.

The basic reason these types of tech started to appear is that GPUs changed. At the time OpenGL was designed, its design was made for the GPUs that existed at the time, and it was also made in a time that matrix operations were too heavy for the CPU and furthermore, there was no multithreading! These new APIs are designed with all this in mind, and, among other reasons, this is what makes them so great.

On Netrec

Some of the old guys will remember this: I made a little tool, called netrec, that recorded nethack sessions and saved them to a binary file that could later be reproduced without loosing timing information.

Today I was also working on a new version of this tool, a really well designed version (written in Rust, I love Rust) and started (again) to dive into the world of terminal emulation. I know a lot about terminal emulation for the VT series, which is the default almost everywhere. And thing is: VT is old and keeps getting older at the time we speak.

Every time someone writes a new tool for anything related to terminals, be it using the (also OOOOLD) (n)curses or by making a web player for terminal encoded information, you are creating legacy code. You are creating code that has no reason to exists besides the fact that it exists and people keep making things to work in it, because it is too hard to change the way it works - until we do it.

What I am suggesting here is:

Why don't we make a terminal specification based on the fact that now days everyone uses software-emulated terminals? We could take advantage of that in a number of ways.

The benefits of doing so would be in many ways very closely related to the benefits of creating new APIs for GPUs like Metal and Vulkan.

  • Faster code (less branching);
  • Easier to implement (complex features would be provided in another )

A note about providing complex features in a separate API: terminal emulation has some complex-to-understand features that aren't powerful features. For example: colored text is an powerful feature, not a complex one. But some of the tab stop features provided by the VTs are actually pretty complex to understand (and maybe implement) but the aren't really powerful. In fact, I haven't seen anyone using them.

  • More useful features;

This includes taking advantage of graphical displays. Some of the possible advantages are already implemented in current terminal emulators, but are too mixed with legacy code to really take the most out of the terminal.

  • New ideas could be explored;

Maybe the current model we have for a terminal is a good one (it is) but probably it isn't the best one and only by putting it on the paper again we can reach a best terminal format.

Terminals are like browsers

They run lots of apps inside them and the provide a default language and interface to the outside world. Maybe these default languages should be more alive, just like the browsers are. Maybe using powerful features from terminals shouldn't take lots of external libraries and lots of code, just like it doesn't in browsers.

Maybe terminals shouldn't be looked as a thing of the past, but as a very good format to communicate with computers and because of this should be kept clean and current.

One of the things that make browsers great is that they use very readable languages and this, in many ways makes detecting and fixing errors much faster, which makes users satisfied and encourages them to do more and more work on that platform.

Another advantage of having readable languages is that it is faster and easier to write code and you have to do less look up. Let me elaborate on this: you don't have to go on look up for colors every time you need a color in CSS, because the model used is obvious and you can easily approximate what you need and use trial and error from this point on to get where you want. But every single time I've to write some app that use colors in a terminal I've to open up man console_codes, and if I decide to use curses to help me in the process I've to look up the gigantic and complex window model it uses...

I'm really excited about this idea... if any of you would like to bring it further, I'm in!


The same way a subtle distinction was generated between tty and terminal, I think a new name for this new generation of terminals is a great idea.

Terminal was named this way because it inherited the name from the physical machine. Maybe doing the same and calling this new generation Displayers (in the same way browsers browse) would be a good idea. But I really don't think this is catchy nor very good for marketing the idea.

Another idea would be going on the Neovim line and calling it Neoterm. Sounds good and types good. And it is short.

Yet another idea would be simplifying the name in the same way we simplify the API: simply calling the specification T.

Maybe going colloquial? I won't even try in this line, as my English is not good enough for that.

Or using names of small but valuable things?

  • Pearl
  • Platinum
  • Diamond
  • Turquoise
  • Topaz

Anyway.. I'm not good with names :P

See you!

P.S.: All I could imagine while writing this was Linus screaming:

This is just shit! What kind of cocksucker are you to even think of creating a new standard for terminals that could possibly mess up with my kernel?

And this pleases me.

February 11 - 2016 at 00h

Phi-Lips #4

February 11 - 2016 at 00h

It's early morning. After surviving almost three days in the cataclysm, I was thinking I was finally going to last a week.

Turns out I was missing something. F***ing landmines! Stepped in one and BOOM! Dead (not really, I died from an infection caused by the injuries).

So, here I am. Dead at early morning.

Other news

Lips is sick, I'm pretty worried. It appears to be an urinary infection (this is what the doctor said) and she is already taking her meds, but I'm still worried (still I'm worried?).

We are going back "home" today. SW was awesome, loved it! Also, it was the first 3d movie I watched. Not as bad as I was thinking it was going to be (it wasn't even bad, I liked it).

Even more uninteresting news

Next TV series I'm going to watch when I've a bit of time for it: Dr. Who (the new one).

Really cool news

Found a superb series of articles about fluid simulation (don't be fooled by the title, even if fluids aren't your thing, there's still a lot you can learn from it, really!)

Worth sharing news

Wallabag is a nice project. It is similar to pocket but open source. My opinion? Pocket is better at everything, except content extraction, but as content extraction is a very big deal for me (reading web pages sucks), I'll continue to use both.

It shouldn't be that hard to make a content extractor that just works. Oops, just remembered that AJAX exists. No, not that easy. But the part of finding what is content seems to be a interesting and easy problem.

That's all. I think. Bye!

February 11 - 2016 at 00h

Hello guys!

Today I came across ~greymtr's home page and saw that he wrote:

Later on when I was looking at the other Ctrl-Cers' [ is that the right term ? ] tildes I came across bake and realized that I had wasted some time re-inventing the wheel :|

Well greymtr, as I discussed in a previous post, I think here in the tilde is the best place to reinvent things. We aren't here to create top tech (in most cases, of course - we can never know for sure) that is useful for everyone and replaces every other option. Instead, we are here to have fun in the process of creating things, as I assume you had creating your "Blog_Tool"!

Summary: I don't think you wasted your time. You had fun and probably learned something cool in the middle of the way and this is what matters.

I say:

Keep reinventing and at some point you will spontaneously start inventing!

February 11 - 2016 at 00h

Another crazy™ thing!

This time it is a shell script to create polls!

Creating a poll

poll new DIRECTORY

and that's all

How do people vote?

They go to the directory (it already has the perfect permissions so no one can mess things up) and run the script vote (with a ./vote). They will be presented with the question from the file .question, the topic from .topic and the options from.. guess it... .options.

.options is organized in a one-per-line fashion, and there are two special options:

  • Other: The user can type another option
  • Withdraw vote For the user to remove his/her vote.

Counting the result

poll result [DIRECTORY]

note that the directory is optional.

If you do not specify, it will assume the current working directory.

The output will be in this fashion:

Running - 1 votes - 50.00%
Running upside down - 1 votes - 50.00%

Updating the page

poll update [DIRECTORY]

updates the web page, you will usually need this after updating the files

  • .topic
  • .question
  • .options

to reflect the changes on the web page.

How to get it?

I am still working on it (so feel free to suggest something!) but I believe it will be available tilde-wide soon.

See you later!

February 11 - 2016 at 00h

Hello folks.

I haven't posted for a loooong time now.

Probably because of my term paper.

How hard would it be now days, with the right kind of... you know... money to make the perfect elementary OS box?

I suspect that one man with money and time can do it quite easily, problem being: no one seems to really have money and time at the same time.

I've been watching lost. I'm surprised it wasn't canceled. So much cliche over and over and over!

That's all for today guys, still haven't completely finished the software for my term paper...

February 11 - 2016 at 00h

Hi ~greymtr!

First, about the MUD you asked some time ago: I still want to make it, but there isn't anything ready. If you want to write down something or even make something, go ahead!

Next, I want to reply to some of your thoughts:

Off late , I've been wondering what we have done as a species that's worthwhile. Human history comprises mostly of fighting amongst ourselves for resources and ideologies, setting up of new social - political - economic systems, colonization and so on. We as a species, have done so very little worthwhile.

Why isn't fighting amongst ourselves for those things worthwhile? Just to be clear, I'm not saying it is, instead I see you're putting your social values and meanings for "worthwhile" in the sentence without first saying what they are (and maybe why). What makes something worthwhile?

I saw that further in your argument you say a bit about what you consider to be worthwhile: survive, expand and learn. But again, why are those important?

The idea for the comments is pretty good, and I'm sure it's possible, just watch out for the spam (manual approval?).

February 11 - 2016 at 00h

A tilde lover introduction to tildes

We all love tildes. Tildes are a truly awesome place, because here we are in direct contact with the machine. We feel it. And we are also in contact with others.

The feeling of brutally open tech, waiting to be improved in every aspect that one could possibly imagine makes us want to do things. Things we do not do in other places because... someone already did it.

Here we feel it's ok to reinvent things.

And you know what? This is cool. Not only cool, also awesome. There's no waste in reinventing things, because for you, they are new. And this is what matters. And by doing things you would never do in other ambients, you get an out of the box thinking. You learn new things for you. You enjoy yourself.

Saying "Someone already did it" is just an excuse not to learn some superb obscure nerdy computer thingies.

And when we are tired of reinventing things, we invent new ones. This is even more cool!

It's like pizza, you would never stop eating because someone told you he already ate one. You eat and you feel good. By feeling good, you make other people feel good. And it is even better to eat with others, excatly like we do here in the tildes!

Blah Blah Blah over, lets talk

For us, hackers and *NIX guys, here it's a nice warm place. But for others, how could we give them the experience we have here? I believe the makers already know how, but reinventing is truly understending, so...

I have not quite imaginated how yet, but there are a few interesting points.

  1. Limited tools
  2. Limited but direct contact
  3. Contact but privacy

This could not only be a really interesting phisolophical subject but could also result in the discovery of a nice workplace design for companies.





For everyone: feel free to drop me a mail about this (or any other) subject! I'm always interested in cool things. You can find my e-mail somewhere here... in an about me post, I think. Mails about typos are also greatly appreciated, as I sometimes can miss some of them.

Not over yet!

Also, ~pgadey mentioned about my compiled poetry micro-manifesto in his page!

February 11 - 2016 at 00h

Phi-Lips #6

February 11 - 2016 at 00h

Uhul! First flow release!

In this release you can... move around! Awesome, isn't it?

More importantly! Communication between client/server is encrypted! Yeah! You trust me? Stick your root password in there!

Don't do that! It's a young software, which means it doesn't want to do what you want it to do!

Under the hood, there's a lot of cool things, you can check them out and contribute!

February 11 - 2016 at 00h

Erhh, about flow:


Now the main focus of development will shift to the map generator.

When we are able to generate a 'playable' map, focus will shift back to client/server and we will probably have another release. Hopefully... some playtesting too!

About the map generator

I'm thinking of creating composable bundles of objects that can be used in a modular fashion to ease the process of describing complex mudometries (geometries in muds are mudometries! Didn't you know that? No?! Don't trust me.) of things like:

  • underground bunkers;
  • cities;
  • orbital elevators;
  • complex stuff made of smaller complex stuff that has more stuff in it which makes even describing it complex.

Map performance

Okay, have you heard of oct/quad-trees? (there should be circtrees and sphetrees too, they would have some interesting properties, for example: cool bugs)

They are very cool data structs that almost all gamedevs have had to implement at some point in their lives. What do they do? They make it fast to ask

"what is inside this rectangle?"

(cube, in the case of octrees). They are also very easy to implement for static objects, but not as easy/good when you have many dynamic objects.

Also, due to the nature of current CPUs (read: cache everything), quadtrees aren't very good. They use a lot of non-continuous memory (which is bad) and have to travel between these places for almost every query (badder :V).

Grids came to help

So, what should we use to improve the map performance? The simple grids!

Grid is just that, a grid. What is the advantage of using a grid? That for every position you give them, it's instantaneous to compute where that position is located. And except in extreme use cases where you have all your object population in a single grid cell, you're good.

Another advantage of grids? Continuous memory. Lots of it. Only it.

Argh! I wrote too much already. Back to coding.

February 11 - 2016 at 00h

I had never read anything from David Mumford, at least I do not remember reading anything from him before today.

I was surfing around the net, which by the way seems to be something people are not likely to do nowdays: get lost in deep links in obscure blogs and webpages about the most divergent topics, from people you never knew existed. In truth, I believe very few people ever did this. But those of you who do it know it's an unique way of finding interesting things to read, and also things to do.

Anyway, as I said I was surfing around the net, when I found this site from Professor David Mumford about mostly mathematics and computer science.

I imediatly became a fan. Professor Mumford writes in a nice and straighforward way, while using a style that is both clear and sofisticated, I really loved it.

Also, this new firefox pocket (and the reader mode) thing has improved astronomically my web reading habits. Before it I couldn't stand reading from webpages, but now I regularly read. As aways, the Apple guys have awesome ideas (I belive this was their idea, originally implemented on Safari, please correct me if I'm wrong).

I am thinking about writing a paper... just for the sake of writing it. It has been quite a long time since I wrote something. Also, I'm thinking about writing it in english. I am not sure if my english level is sufficient for that, but if I never try it, I'll never do it, so I'm really thinking about that.

There are some experiments I've been doing that surely would turn out to be nice papers:

  • a simulator where neural networks drive beings in their need for food to survive. This is the initial implementation of a idea I had with ~caasi a while ago.
  • my web based historical fact reconstruction system. This is a school work and I'm already writing one paper on it, but one in english would be nice.
  • trying to simulate multicelular beings, but doing so without explicitly making cells dependent, but just by making cell specialization and cooperation possible.

I really interested in this third idea. Looking forward for doing it.

Do you guys know of any interesting A.I./Bioinfo/Evo-Devo magazines/conferences I could sumit such a paper to?

I missed opening up my mind to you guys, but it has really been a hard time for me to get anything done, because I'm sleeping very little so my brain does not work well, and I also have tons of things to do at school plus I'm helping three colleagues with their final papers.

You see, it's not easy.

Anyway, see you!

February 11 - 2016 at 00h

This week I didn't do much... except for things related to compiled poetry. I'll make a little summary of the things I worked since the last update.

  1. Ace Editor

    I've been messing around with the Ace Editor. The idea is to provide people with a way of writing compiled poetry right from the browser. It's working more or less okay, but I still have to learn how to do some things.


    By the way, the blog is up and it uses the new version of bake! (here I still use the old, while I implement the nethack player again in the new). Also, for all of you who do not speak Portuguese (I believe this is almost all of you), Débora Azevedo, a friend of Soraya, translated one of the compiled poems, you can find it in here: Prayer to Python.

  3. Sang Prayer to Python

    I made a song version of Prayer to Python, not very good since I'm not a good singer, but it was nice to experiment with the idea.

  4. Wrote a compiled poem

    It's about women. I really liked it and I'm gonna publish it as soon as I have the tools to make it beautiful ready.

  5. The Definitive Compiled Poetry Manifesto

    I am writing it to use the <canvas> element... it's gonna be


  6. Discovered a nice way to chat on the web


February 11 - 2016 at 00h


I'm happy to inform you that our MUD is in development!

The development will be git-based, and the repository can be found here.

As usual, contribute using PRs. More info can be found here. This is also the document you should edit if you have ideas.

Those ideas should be first discussed in issues and then written on and merged back.

I find it important to tell you that there isn't anything you can't change, even the design. If you do something and the result is good/cool/crazy/useful, it will be merged!

Language Choices

Everything will be written in JavaScript, both client and server, using node.js.

The main reason to use it is to allow everyone to contribute easily, as JS is kind of the programmer's common ground (it used to be C, you know).

Current Status

The current status of development is a few hundred lines of code with basic map, math, movement and object creation support, no actions yet.

Closing up

That's it! Go check out my ugly code and make it beautiful!

For those of you who wanted to develop and design, the time is now!

February 11 - 2016 at 00h

Today am announcing something I have been doing since... well, since morning.

"What is it?", you all ask in visible excitement. I, making a imense suspense pause while the Star Wars theme begins to be heard softly, answer you "It's a website!".

The website is Poesia Compilada (yeah! it really is "compiled poetry" in portuguese!), it's in portuguese (by now!) so you probably won't find it very interesting. But it's a beautiful thing, it's worth looking.

If you take a look at it's source code, you will also find a nice hint of what I'm working on.

Or if you follow this link.

Bye bye! See you all later!

February 11 - 2016 at 00h

Hello, dear readers!

I'm going to spend the last days of the year and the few first of the next year in Natal at Lips' home. I'll be going there later today... (its like 00:45am now and we will leave at 12am).

Guess why I'll be going there! Guess!

Star Wars

of course, it had to be it. The last movie I watched at a theater was the last of the hobbits (this sounds dark). Don't disappoint me, Star Wars, pleeeeaaaseee!

I still have to pack my things and do the dishes. Ugh.

What have I been doing

  • Non-grid fluid simulation;
  • Drawing some mock ups;
  • Violin practice;
  • Watching Pretty Little Liars a lot.
  • Found out about ~point's and ~greymtr's conspiracy: they want to dominate the tilde!
  • Reading on classical mechanics (hey, the tablet is really good for reading);

Oh my god! How could I forget about that! Be aware... this may come as a surprise to you (I'm full of surprises! Am I not?).

So... you ready? Lets go!

I mean, are you really ready? I can wait a few so you can get real ready.

Here we go.

Oh boy.

I just finished high school.

Yeah that's right.

And I finished The Martian. What a book! Loved it. Highly recommended.

I also have been playing FTL and Prospector. Did you know I didn't beat FTL even after all this time?

And I'm working on "Flow" again. Posted it on reddit and got some really good advice. Thanks reddit!

Happy to see you all again! See you later!

February 11 - 2016 at 00h
February 11 - 2016 at 00h

Here goes a little trick you can use to put EMACS in full screen on elementary OS:

wmctrl -r emacs -b toggle,fullscreen

Works greatly! You can even create a full screen function inside Emacs and call it by using

   M-x fullscreen

and calling the above command with it, e.g:

(defun fullscreen ()
    (shell-command "wmctrl -r emacs -b toggle,fullscreen")

Works flawlessly!

February 11 - 2016 at 00h

This is a test About Me blog post.

If you are seeing this in a web browser, this means that I ran the command bake (make+blog) in this directory and some html files appeared magically.

You should also be seeing the latest date this post was edited and maybe the creation date. If you are not seeing these, this means that I am still working on bake.

The Real about me

I am a nice skinny guy, who uses almost all his time to make things that are at best not so usefull. For example, the server side of this blog is written in C (not really, C just converts markdown files).

Currently I am working with Rust (first thing I made when I got here was to make sure admin had the compiler installed). And what I am making with Rust, you ask?

  1. Bioinformatics algorithms
  2. This is some space for this list to grow just so you can know it can grow

I am working to solve all the rosalind problems. It will take a long time, but hopefully I will have them done someday. You can check my progress by looking at my folders in ~/code/bioinfo/. Each folder is for a problem.


There are some ways to talk to me outside some of them are:

[at]felipeoltavares - go talk to me on twitter

madprogrammer/philips/subway - if you find me in an underground IRC channel (ludum dare's one is the best shot)

felipe.oltavares [that symbol]

Geek Code

Version: 3.12
GCS/GS/GMU d-(pu)>++ s+:-- a---
C++(+++) UL+++ P+ L+++ E++ W+++
N o? K? w O M+ V? PS+(++) PE-
Y+ PGP+ t+ 5?>+ X?>++ R@>++ !tv
b+++ DI? D++(+++) G++>G+++ e-*
h* r++ y**
February 11 - 2016 at 00h

And that is it! I met actual people. I met ~caasi. I actually had read his little blog/page yesterday but I forgot this (I'm not very good with names). He also knows the Ludum Dare which is awesome!

Besides these super duper cool facts, I made a little update on bake. You see this little π overthere? It's a permalink. It's really easy to use, as you can see in the following code (it's my new template).

<!doctype HTML>

        <meta charset="utf-8" />
        <title>Philips Personal Homepage</title>
        <style type="text/css">
            @import url(css/blog.css);

        <div class="bar">

        <div class="page">
            <div class="space"></div>
            <div class="post" id="{postid}">
                <div class="content">
                    <a class="permalink" title="Permanent link to the {posttitle} post." href="{permalink}">Π</a>
                    <div class="date">{postdate}</div>
                    <div class="title">{posttitle}</div>
February 11 - 2016 at 00h

Hi! I'm back.

Let's talk about what I am working on, but first I must talk to you that I spoke to our dear admin about publishing my tool (bake) systemwide. He gave me a few suggestions of what I needed to do before he could put the tool in common place (the sacred bin).

Some of these were:

  1. Put the code in some place people could access (read: GitHub)
  2. Choose a license

I was thinking of just pushing the code to github... but if you read my code (I bet you didn't) you will find that it is a pure, dirty mess.

As some of you may know, I'm using Rust for some of my projects, because I really love the language. And I began thinking of rewriting bake in Rust, after all, it's just a small tool. But I'm also very found of C++, in fact, I have done so much work in it that it's very hard to think of using anything else.

And this was my conflict: write it in better C, write it in C++ or write it in Rust.

The young ones are cutier. Rust won.

I'll use this post to update my progress before a initial 0.1 release. After that, I'll move it to github and you can contribute diretly!

  • [x] Reading (new) bakefile format
  • [x] Reading (new) template format (and storing it in much better way)
  • [x] Support for customizable "post generators"
  • [ ] Support for the markdown post generator
  • [ ] Sandboxed javascript code for each post
  • [ ] .netrec files support

(thanks to: ~caasi, I love to read your posts; eric: for the mention on the main page)

See you! ~philips

February 11 - 2016 at 00h

I have a friend called Soraya Roberta. She is an awesome poetess and she is starting a movement called Compiled Poetry.

I am giving her cover in the super-tech stuff.


What is it?

Compiled poetry is a movement where beauty ideas from coding as art are applied to the art of poetry. Poetry is writen as code. As everyone knows, every coder loves syntax highlight, and with compiled poetry it is no different, syntax highlight is applied to give ideas and show differences of meaning between different terms.

Is it a thing yet?

No, it's just starting. We still have a lot of ground to cover before this turns to be the biggest art movement in the century :P

We are working in a "compiled poetry workflow" and also puting up a website for the movement and some other things, but for those of you who love poetry and love coding, it's on! Go and start compiling poetry right now!

Also considered compiled poetry

Code that when you compile & run (or just run, in the case of interpreted langs) gives you poetry in result. This is not our invention, I believe, but it's cool and we also embrace it.

Was it our invention?

Probably not. But my friend Soraya had the idea without looking into any source. So, if you know of a similar movement or people who do similar things, contact me so we can unite efforts!

I can hear you shouting "Finally, a decent post again!" :P

See you!

February 11 - 2016 at 00h

Well, VIM is kind of the ultimate tool for everything, so I wouldn't be surprised if Batman himself said in a press conference:

My ultimate weapon, you ask? It's called BatVIM.

So, some time ago I came across this little musical notation called ABC which (at least for me) is the most natural way of writing music ever. So, today I was here in my write-compile-listen loop, and thought:

What if I just pressed CTRL-L to listen to the song?!


map <C-l> :!abc2midi && timidity theme11.mid<CR>

It works. It's perfect, babe. I mean, VIM.


Our dear ~pgadey made a neat improvement:

map <C-l> :w <bar>! abc2midi % -o %.midi && timidity %.midi<CR>

Now it also saves the file!

February 11 - 2016 at 00h


And here I am again, after having survived another battle!

My dear dears, I must warn you: what will be said in this post must remain in this post!

And here I begin.


Have you ever wondered about who are these batman & robin at the beginning of the blog? No? Shame on you! The batman is @WannaBeArwen (Do you see a reference to something there? No? Shame on you!) and you already know who she is!

She is a ice-cream addicted food loving TV series eater bear-human batman! You know her from my Phi-Lips comics (she is also known as lips)! The robin is just me.

Anyway, I know you guys do not care about this foreplay stuff, so lets go directly to the point.

The Point

First of all, I am addicted to web comics. I bet you all already knew that, but I am saying it anyway.

So, I did what any person addicted to anything would do: I googled.

top 10 slave sellers

Ooooops! Not really. I googled:

top 10 web comics

An then... something truly awesome showed up!

User Friendly

I started reading it immediately, but then the mosquitoes started biting me (they are very common around here) and I thought:

Better go to bed!*

but then... Something crossed my mind

Oh shit! There's no wireless signal in the bed!*!

How was I supposed to read a webcomic without internet? My UNIX Hacker mind immediately evaluated all possible alternatives and provided me with the highest rated one:

Write a f***ing SHELL SCRIPT!

I did it. A shell script that downloads every single comic in their website via scrapping their pages.

Result: Downloaded ~~500~~(now it's over 1000) .png images and I haven't had time to read all of them yet.

* - Not really a bed, I sleep in this.

Begin of the Cool (and secret! don't you dare tell anybody about it!) Stuff

Do you know who is Amora Bettany? No? Shame on you!

She is a super-duper artist, and furthermore she is one of the members of MiniBoss the game studio that inspired me to make games for real. So, do you remember that Compiled Poetry Blog Thingy? We recently started making interviews with people in the tech industry, so I thought:

Lets make an interview with Amora!

But she is kind of a very special person to me, so I wanted to make something also special. She make games... why not make a game of the interview?! I know, crazy, but I do like crazy ideas.

I am working on a game where we interview her (and possibly, the also-awesome-super-duper-artist Pedro Medeiros, also known as Saint - which happens to be... her husband)!

Here are some screen shots:

Loved pixel-pushing them :3 Vroooooom! Strange clouds, I know.

these clouds are fluid-simulated, but I'm still trying to get the best possible look out of them.

Okay, that's all for the game.

Soundpost & Bridge

Since a long time ago, my violin has been speaking with a non-violinish sound, because its soundpost was in the wrong place. I fixed it! Also lowered the bridge and now it sounds like a strad! (not really) It changed sooooo much. Now I am loving even more playing! Someday I'll post some audios/pics of it.

D. Eqs

I am reading Differential Equations: An Introduction to Modern Methods and Applications by Brannan J. & Boyce W. So far so good.

February 11 - 2016 at 00h

As I told you before, I am working with a friend in a new art/programming concept.

For this I need to write a webpage. For it I looked into Jekyll. Man, it's so close to the design ideas of bake. I am very often surprised how like others some of my software look.

I had not looked into Jekyll to write bake, not at all, but the choice of a lot of things looks very similar: using - to separate post names, using the full .markdown extension.

Of course Jekyll is much more configurable and a much bigger project. But it's cool that bake looks like a simplified version of it without me having not a single look into it before writing bake.

This post in a word: WOW!

February 11 - 2016 at 00h

Phi-Lips #5

February 11 - 2016 at 00h

Hello folks!

You probably noticed I made some very minor changes to the blog...

I'll enumerate them so you can follow easily.

1. Permalinks

I am now using the LINK SYMBOL in permalinks. π was a bit strange, I believe. The new and awesome LINK SYMBOL looks like this: 🔗.

2. Overall CSS

All new CSS.

Probably you are already accustumed to the almost weekly CSS changes. This is because I believe people like to see changes. There's no perfect design, there's the design that's good. And if it changes, even better.

I think this makes people see that you are alive, and people like to be part of something that is alive. This makes them also more alive! Win-Win for everyone.

3. More HTML5

I am using more HTML5 tags, things like:



4. Updated GeekCode

I added my GeekCode recently, but without version. Now this is fixed.

5. Analytics

Also added this a bit ago, but forgot to mention, now I can see y'all!

I think that is all... at least I can't remember right now of anything else.

February 11 - 2016 at 00h

While I was walking in the deep, dense forest near that river, a rabbit came to me, looking through his big black eyes and said "Hey! HURRAKI!".

February 11 - 2016 at 00h

And here my vacation ends.

Maybe you will hear from me soon, maybe not.

"But I think this giant nethack screen begin played in my f**king browser deserves explanation first, don't you think?"

Yeah, ok. So, this is a project I'm working on. You just make a nethack recording in the blog dir and bake creates this cute little player. It's a WIP!

The name of the recorder is


See you!

February 11 - 2016 at 00h
February 11 - 2016 at 00h
February 11 - 2016 at 00h

EDIT: Better check out an updated guide for how to use bake in bake's github page overhere EDIT: DO NOT USE THIS POST AS REFERENCE FOR BAKE's USE it's outdated and will not work! Check the github page above!

As you probably know, I spent the last day or so writing an little cute tool called bake.

The idea behind it is very simple. You create a directory:

mkdir blog
cd blog

after this you create a bakefile file:

vim bakefile

and write something like this in it:


then you create your template file:

vim template.html

and write a little html in it:

<!doctype HTML>

        <title>Philips Personal Homepage</title>
        <style type="text/css">
            @import url(css/blog.css);

        <div class="bar">
            Philips Personal Homepage

        <div class="page">
            <div class="space"></div>
            <div class="post">
                <div class="content">
                    <div class="title">{posttitle}</div>


The {} delimits what code should be used for each post. {posttitle} will be replaced with the post title (I know, it's a bit hard to simply look at posttitle and understand this, so I'm helping you :P). And posttext will be replaced by the post text.

That's it, after that, when you want to create a blog post, you simply make a .markdown file (YEAH! IT SUPPORTS MARKDOWN!) in the same directory:

vim post-title-goes-here.markdown

And you are done. Just run bake.

February 11 - 2016 at 00h

And now you can put dates in your bake posts. Just use the {postdate} selector. Currently you cannot modify the date style, but I'm working on this right now.


Now you can make your own date format. Use the DATEFORMAT key on your bakefile. The format is the standard strftime format.

My own, four your viewing pleasure:


Have fun baking blogs!

February 11 - 2016 at 00h

Hi everyone!

I know you guys get upset when you do not hear from me... so here is a little post bout what I have been doing this week.

Implemented RK4

This is not something I do every week... just in the weeks that I'm thinking about messing around with quantum mechanics and bioinformatics.

Talked to Stephen Larson

This is the guy from OpenWorm he is an super duper awesome guy! He showed me the work they are doing (and that I want to do with them), like building geppetto and other awesome things like neural simulation. If everythin goes well I will help them with the 3d visualization stuff.

Tip: This probaly explains why I'm messing around with RK4.

Read a dozen scientifica papers

This is a conservative estimation. Probably I read a couple dozen. All about C. elegans or neuronal activity or Hodgkin-Hunley model.

Lost my time over xkcd

No comments.

Started a roguelike

I used my old rogue engine.


Did you know that instead of typing:


I do:

ssh <right arrow>

man... I'm lazy.

I am waiting for cataclysm dda to finish downloading. They released 0.C! Long time (three months) since I played it.

Also, maybe I will dowload dwarf fortress later. Or just keep reading my quantum physics books. I don't know.

My little post turned out to be pretty big. WOW!

See you later, guys & gals!

February 11 - 2016 at 00h
February 11 - 2016 at 00h

I found that there's a fish shell. I'm using it and it appears to be kinda cool.

Also, finished a basic version of my <canvas> based manifesto. It's online.


I have been thinking about the best way to integrate bake with custom post generators. I think maybe the best way would be to have the custom generatos communicate through pipes.

Finished some features, like individual pages per-post and hashed URLs, commited them to the repository.

Also using gcc as default compiler.

Added a Quick Start to the readme at the repository.

February 11 - 2016 at 00h

Hello again!

WARNING: This is an essay, which means it is written in almost real-time following my thoughts, and may or may not be modified later. It may be inaccurate, nonsense or even harsh.

I am working in a school project where we need to have a diff of two versions of a description. I first thought I should make something really diff-y, maybe even using diff itself. After some more brain frying, I decided something that did a word by word diff would be much better for readable descriptions.

I say this because it would both improve speed, if done from the concept (comparing words, not letters) and readability, because it's much easier to see words that were removed/added/modified than letters/lines.

I could use diff as a back end, but I will not for two reasons:

  1. it's a web-based (PHP) project, so having code in PHP is better for portability;
  2. it provides a great way of learning new algorithms, which is good for me as a student.

furthermore, I could say that implementing my own version will give it better integration with my system but this could not be the case. (be not the case? native speakers, give me a hand here!)

There is wdiff, which apparently does what I want, but it gave me, given the two following files:


This is the first file;
And this is the second line;


This is the second file.
And this is another line;

it gave me:

TCC 10:01 PM > wdiff f1.txt f2.txt 
This is the [-first file;-] {+second file.+}
And this is [-the second-] {+another+} line;

if you look closer you will notice it considers punctuation part of the word. In my system, I want to treat punctuation as individual words (or maybe it just clumps together the changes, which is also not the behavior I want.)

So, back in how I am going to implement this word diff.


First thing I am going to do is to hash the words in the files, for this I downloaded a database containing all the words in my target language (Portuguese) and I am running the hash function generator gperf on it... but I have no idea how long it will take for it to finish (and it is already using ~8% of my RAM - compared to 2% for firefox).

To be continued... (any of you watch(ed) My mad fat diary? This just remembers me THAT scene)


Read this paper. Pretty much contains everything I needed to know. (although this was not the first contact I had with the subject - remember, I do a lot of genetics :P)

To be continued...

February 11 - 2016 at 00h

Hi! First December post, I believe?

End of the year! Lots of things are going to change!

First of all, next year I'll be joining the army (if everything goes as planned).

One minute of silence for you to regain your composure. I bet you didn't expected that!

Then there's the fact I'm playing Dungeon Master in an RPG I designed for a school work... the session is today! Wish me luck!

As crazy as I am, I made some handmade miniatures from wood (and cut myself a dozen times in the process):

A beautiful picture

Finished product

Ah! Before I forget, our dear Lips has started her own blog (in Portuguese)!

See you later guys!

I was feeling Super Happy
February 11 - 2016 at 00h

Hello, dear readers.

Yet Another Week Log.

There has been a lot of activity around the tilde this week. Some new members and some new pages are popping around.

I liked rrb's page a lot.

  • Sunday: I made a little game for, which can be played here
  • Tuesday: I went to a meeting with the OpenWorm members responsible for Geppetto between my morning and afternoon classes.
  • Wednesday: Regulated my sleep cycle! Finally!
  • Thursday (ongoing): Started studying PDF again. Goal: make a little formatting tool for creating correctly formated articles with my school templates. (and later on try to expand to ABNT formated articles, which is the local brazilian organization for dealing with technical norms).

Aaaaaaand tomorrow I'll play in an event! I am kind of nervous. Ahh, my Pirastro Tonica strings arrived yesterday! They sound adorable!

February 11 - 2016 at 00h

Hi folks!

So, today I'm gonna talk about a way to generate good looking PDFs from markdown really fast.

I'm using it for almost everything nowdays, because markdown is almost perfect, so I can focus on writting instead of on formatting or spending days compilling tools for converting to PDFs and such.

Maybe some of you are Windows guys... maybe it is better stick to Office.

The idea is to use the Atom editor, which I consider to be nearly a new generation EMACS, add some plugins to it and easily work from inside the editor generating PDFs for everything.

Some very common use cases:

  1. Print QR codes for bitcoin and throw them out the window!
  2. You can write reward posters!
  3. Write recipients for your neighbours!

So, the packages I'm talking about are markdown-pdf and markdown-preview.

Wait! You said Atom can be even compared to EMACS?!

Oh yep. The idea behind them is the same, to have an editor that is


The real difference between them is the tech used to build them.

And... maybe... some shortcuts.

Ahh, I see... you made a post about installing packages in an editor...

I know, I need psychological care.

No, I fooled you all, this post is really about my new shiny blockquotes.

February 11 - 2016 at 00h

elementary with Howl and xterm

Desktop Picture

The usual elementaryOS.

My version of Howl, Folt Howl with an adapted version of the Moonshine theme and conventional xterm with a slightly bigger font. Wallpaper from flickr.

Code: our mud.

February 11 - 2016 at 00h

Hello guys!

I've got a new box!

A little low end android box... but still, it's a freaking computer!

A pic for your viewing pleasure:

posting from it

now, guess from where I'm posting!


February 11 - 2016 at 00h

Phi-Lips #1

February 11 - 2016 at 00h

Hello folks.

Remember that idea I told you I had? Making a system to automagically create ABNT formatted documents? Well, some guys did it before I could do :/ But they did it veeeeery well. Web based and everything else.

My approach, as more of a backend guy would have been to create a command line tool that handled everything and let the user choose what text editor they liked more. I can still do it, but for a school work it wont work very well anymore, as they prefer innovative ideas.

Anyway, check it out!

Ahh, and I read somewhere in the ~ (actually I read it in multiple places) that you were interested in making a tilde MUD, huh? I also like the idea and made a page on our brad new wiki to talk a bit about it.

I think we got into a point where making a few polls would be good. I was going to do the first one on the wiki itself, but maybe making a platform for tilde polls would be better, no?

So, this is what I am going to do now, this little platform. I have to review a bit on how UIDs and GIDs work, but I already have some ideas for how it should be built.

Also, I am suuuper tired.

February 11 - 2016 at 00h

Nethack will never leave your life, my dear ~Point!


February 11 - 2016 at 00h

Phi-Lips #3

February 11 - 2016 at 00h

Hello folks!

~pgadey found a nice short documentary movie from Bell Labs about using UNIX: Making Computers Easier to Use.

It is from 1982, but it is still very good (no wonder why). So good I think teachers could use it in current classes about Linux.

There is a feel associated with UNIX that the documentary shows well. The ideas behind it. How to use it right.

Awesome discovery, ~pgadey!

February 11 - 2016 at 00h

Bake is now open-sourced!

Check it out!


February 11 - 2016 at 00h

So, as probably most vim users, I had moment where I just felt it was different from other editors and I felt like I was the master of text editing.

I ask you:

What is so great about vim that gives us this feeling we are moving text around effortless?

First thing I can think of is line labeling. You can set rnu on (do this, newborn vim users!) and then each line will have a label by which you can refer to. You may ask:

But other editors also number lines! What is so great about line labels in vim?

There are two things.

  • Relative numbers give you easy access to the close lines anywhere you are in the code, doesn't matter if you are at line 1453, the line above the cursor is always 1. Also, your brain doesn't work like: I want to copy line 1458, but like I want to copy that line above.

  • You actually can do things with line labels! Most editors work in a fashion where the only thing (I know of) you can do with line numbering is a "go to line xyz". In vim you can type ":-4d" and the delete the line above numbered as 4. You can use the labels!

Second thing: in vim you specify repeated actions easily. You can delete 8 characters by simply typing "d8" and the direction you wish to delete.

This gives room for the following thought:

If you can label efficiently all the places on the screen and allow the programmer to efficiently specify them, you'll have the most efficient text editor. (eye tracking, anyone?)

February 11 - 2016 at 00h


Check it out!

Be aware: grammar errors all over the place at the moment.

February 11 - 2016 at 00h

Hi! Bye!

February 11 - 2016 at 00h

Phi-Lips #1

February 11 - 2016 at 00h

Today I was messing around with facebook thumbnails for my little pet project (that isn't that little). What I found is that you can define some nice meta properties for OpenGraph, such as og:image, og:title and others, and then facebook will automagically add those when you post a link to your page.

A little trick

Sometimes you change your thumbnail and facebook do not update it, so what can you do? You can go overhere and tell it to update your url.

Added css for inline code

Well, not exactly. I'll add it after I put this post on, so you may find that the above heading is lying to you. Do not trust it.


And now, Poesia Compilada has a nice logo! (Yeah! I'm getting the hang of vectorial drawing!)

I never tried to put an image here, so I dont know what will happen...

There you go:

Poesia Compilada Logo

Bye bye! See you all soon!

February 11 - 2016 at 00h
bake feed


February 11 - 2016 at 00h

There is someone building something here.

February 11 - 2016 at 00h

Guys! I made some comics! Let's eat them!

I plan in making some per week. There are so many things I want to say that don't sound well outside comics. So, I'll say them in comics.

I don't have any idea if you'll find them fun, but if you do, please let me know so I can get happy & make more comics :3

Oh no, you saw my cat-face!

February 11 - 2016 at 00h

Hello hello!

I am working full time on the MUD (I know, I know, you envy me).

Right now we are at 64 commits, 14 closed issues and 7 merged pull requests. Quite a lot for one man/week.

The Development

I created a pretty interesting development work flow:

  • write a little storyboard of an in-game story;
  • translate it to a milestone;
  • add the needed issues for the story;
  • close all the issues;
  • create one final issue;
  • implement the story in the game.

Currently I'm implementing the 3 last issues for the first story: Pick into the future.

Also, man,blessed is so cool but its source is so ugly!

February 11 - 2016 at 00h

Use it. Use it. Use it. Use it. Use it.

Thank you.

February 11 - 2016 at 00h

Welcome ~eka!

I can't read anything you write, but I can see you do an awesome work!

Anyway, loved your theme on your homepage, and I also took a look at your blog and medium. Well done!

February 11 - 2016 at 00h

If you frequently read this blog, you problably noticed something:

"That blog? It hangs like hell when you open it"


The nethack player.


One line fix: I was updating the screen after every character, now I do after every character burst.

Enjoy the new fast and responsive blog!

February 11 - 2016 at 00h

Hello guys!

You didn't expected to see me so soon haha!

This is because after I watched that little documentary I told you about, I wished I still had some old CRT terminal. They are just so cool and beautiful.

I always thought that Nethack looks a lot cooler in that ones. Also Emacs. And vim, by the way. I guess what I am trying to say is "CRT is just perfect for text-based software". Or maybe I am just being nostalgic, who knows.

Anyway, this led me to a path that ended in me trying to find some kind of software emulation for terminals. I found this one called cool-retro-term which is good, but crashes a lot (at least the pre-compiled version I got from some ppa). In fact, it is so good I will try to find why it crashes so much, because it is really awesome to use it.

I am accessing the tilde through it right now!


If you checked that link for a online wiki-based dictionary I sent to you the other day, you must be wondering why I posted that. The reason is I (for a long time now) have been learning German! I am on vacation now (uhaaa!) and I am reading a lot of things in German to help me improve my vocabulary, that's why I went over there! A lot of easy to grasp vocabulary without having to translate back to English! Really loved it.


Just wrote a little shell script (in fact, I am testing it with this post) that does everything I usually do when writing a post in an automated way:

  1. Fire up the editor
  2. Check spelling
  3. Maybe go back to 1 if I find some mistake
  4. Publish or archive the post
  5. Maybe go back later to an archived post to publish it


Found a lot of stuff in his home directory. Hope he don't mind me reading everything he wrote :$

February 11 - 2016 at 00h

Today I learned about a website called lang-8. I found it after I tried talkalang, which is still in a very early beta, so I can't really use it.

A little update on baker's situation

I stopped developing baker, because Rust 1.0 isn't stable as I need it to be (e.g.: missing API parts). Instead, I got bake's source code and ported it to C++, which as I mentioned before was my previous option.

You will hear from me soon on this. I think I'll be able to release bake at the beginning of the next month.

The story of how I burned a pizza

It's a very simple story. I put it in the stove, started watching videos from Porta dos Fundos. When I got back to the kitchen, all I could see was smoke. And my pizza... well, you know.

A thing I was thinking about

There is a thing I don't know if there's a word for in english (mail me if you know one). In my native language, it's called "modinha", and it refers to when people start to buy things/act in a certain way just because others are doing the same.

So, what happens is that usually, there is a lot of people saying that this is okay, and a lot of people saying people should not do anything because others are doing it. The idea was to put up a website "" or something like this where people could vote if something was modinha or not.

See you all!

February 11 - 2016 at 00h

Uh guys!

This week was full of things. By things I mean work. By work, I mean school. Well, not only school, but mostly school.

Anyway, I finally got around posting something for you, but I'm afraid this week I don't have anything really nice :/

Ohhh wait! I DO HAVE!

Dwarf Fortress

Downloaded Dwarf Fortress thinking:

Hmm... looks good, let's see how it feels...

next thing I remember is waking up late.

If you do not play it, you should.

I mean, you should. GO AND DOWNLOAD IT!

One thing I find very unique about it is the guy who develops it... The guy, Tarn Adams is an awesome mathematician, and understands a lot about simulations. Really. A. Lot. Furthermore, he develops the game full time this is a very very unique situation nowdays, where everyone spends so little time in one thing and is already thinking in the next one, specially games. Nobody thinks about developing games for ten years... but he does. This reflects direclty upon the game.

Keep up the good work, Tarn! If I had some money, I would donate!

See you guys. Beaware, I'll blacklist the IPs of anyone that does not play Dwarf Fortress.

February 11 - 2016 at 00h

Some of you probably noticed (those of you who checked my twitter) that I am kind of skilled at game development.

The Idea

I was here, thinking in how to get us closer, and I had the wonderfull (maybe when I wake up tomorrow I will not think this way anymore...) idea of making us code something together.

Okay, by what I wrote in the first paragraph of this post, you may have noticed where this is going...

Lets Make a Game!

Yeah! This was my superb great idea: make a game.

Wait... you are going too fast. What kind of game are we talking about?

I am not completely sure yet, but something like a full-text game, or maybe something more nethackish.

Hmm... and what language/platform are we talking about?

No idea. I have to find the guys who want to make a tilde game™ first and then see how we cold make it work for everyone.

Uh... and what would this game talk about?

Some crazy story that begins with someone using his/her tilde. No. A crazy story about alien tildes! Nope. Crazy tildecalypse story!

You got the keywords: crazy, tilde.

Hmm... go to sleep man!

Going. See you all!

February 11 - 2016 at 00h

I'm working on a new story: The Flow.

February 11 - 2016 at 00h

Hello! Almost time for me to sleep.

(I am a liar, it is almost time for me to go watch Dr. Who)

Anyway, cleared some stuff on flows's github repo, added some issues related to character stats and wrote the beginning of a character stats story, but I'm probably going to write a bit more tomorrow before diving into source code.

Also, started designing an Explorer class ship!

Man, I am dying for a filet steak sandwich with fries and some ice-cream to finish it up. DYING! I would kill for it!

February 11 - 2016 at 00h

Happy birthday, Ceci.

February 11 - 2016 at 00h


I am using the new bake version in the blog! It supports nethack! And it supports even better. Now you can play&pause on-click!

I also fixed a couple bugs, one related to rendering of inverse-color whitespace characters (you could see it in titles of the options menu).

The Nethack Blog Ideas

So, as bake is working fine now, I am thinking of using it to create a blog where everyone could post their nethack sessions I sent a mail about it to our dear Eric and I am waiting for a reply to see what is the best way of doing it.

The overall idea is that you call something like:



rec-nethack CoolTitle

or maybe rec-nethack could ask you for a title after you saved your session (or died).

See you!

February 11 - 2016 at 00h

This is just Yet Another Post About Emacs &tm;. Copyright © Mr. Tavares Craziness. Hand crafted in The Middle Of The Night &tm;

So.. I'm here to talk about how I kicked the door of #emacs asking for the impossible...

Hey, you! How can I erase ALL THE F**KING KEY BINDINGS OF EMACS?!

they tried to talk me out of it

Man, calm down...

What? What do you want?

Better leave these thing alone, my friend.

but I was possessed and determined to do it and at the end of the battle, I got what I wanted.

Y-you c-can reset your k-keymap using (use-global-map) in a newly created keymap, which you can create with (make-keymap). If anybody asks, I told you nothing!

and then continued my evil journey of removing all the EMACS' key bindings...

And defined my own!

Guys! It was awesome! I learned a lot and got rid of key bindings I don't use. The only downside is that major modes assume you use the default key bindings, but I'll slowly get to them too...


February 11 - 2016 at 00h

The new version of netrec already runs nethack, but I'm aiming for a more complete terminal emulation.

This time I want it to run emacs and vim. It will also have some cool features like overlays and will be capable of compressing the generated files.

I'm also working on a terminal player for it, and maybe I'll work in some kind of server side API for it. I know there's already some services that allow you to do this, but what I'm attempting to do is to make something that works okay both for private and public purposes.

Not related, but will have some updated too! And I'm thinking of a poesiacompilada comics...

That's all for today!

February 11 - 2016 at 00h

I was reading through Why gamification is broken (and how to fix it) when I found this, in a section called Examples of Gamification Done Right:

Sublime Text: making power users even more empowered

This got my attention, because I always disagree first and only then I agree. My reaction was:

So, you are saying Sublime Text is gamificated? Are you out of your mind?

Then I read some more and found that his point was simple as

The core principle of gamification lies in natural discoverability

From this point on I really agreed with him. Games are interesting because they always brings you new things to learn. This is the core of any game besides making your brain use its motor skills, which I believe is very important for games too, and there are games that rely solely in this. Then I realized this was exactly what I always propose with my New Theory.

The New Theory

First of all, I have to explain to you what the name of the theory means. It isn't called "New Theory" because it is new, but because it is about what is new. I know it would probably be a lot more readable if I wrote "The Theory of New", but you know me. I can't resist a little word play.

It is really a pretty simple theory that tries to explain why people do most of what they do. It states that

People like what is new.

As simple as that. But it also states that this isn't something cultural or learned from our parents. This is genetic. People like what is new because people are hard coded to do that, because of the way our brains work.

Of course you probably already found lots and lots of exceptions that prove me very wrong, but the brain is a complex machine, so we can't expect people to always act based upon a single principle, but I do believe this one plays a very important role in lots of decisions, mainly when people are acting naturally e.g.: without any pressure forcing them to use logical reasoning.

Oh, and this is also something interesting: people only reason logically when they are forced to. At least most people do that.

February 11 - 2016 at 00h

Hi! This will probably be a long post... I have a lot of updates for you in a lot of aspects of a lot of things.

~ digest

The following are breaking news about our tilde!

  • ~lchen has started a blog using Emacs's org-mode!
  • ~pgadey has been pretty active! He updated a lot of pages and made new versions of his notes, now they have rss feeds! (his µpost about it is here)

My computer digest

  • Needed org-mode for some things, found how great it was again.
  • Because of org-mode I learned a bunch of new things about Emacs (including how to use auto-fill-mode, which is great for writing blog posts that are readable as text too).
  • Switched ctrl to caps lock. I use a laptop, so it was worth it, for now I can press it without having to move my hand from its home position nor twist my pinkie in strange ways. The other solution would be to break some bones. I used xmodmap to do it.

Personal digest

  • Started jogging 5km every day. Thanks to my friends Carlos and Hualyson for the idea.
  • Had lunch with lips yesterday. Not the best food ever, but having lips with me made it great (and the ice-cream we ate after helped).
  • No water at home Friday and Saturday, and things appear to be getting worst. But really, I'd be okay with just water to drink, if it was the case (this is other interesting aspect of my personality, I worry about almost nothing).
  • lips lost her Master Yoda :/ (he was attached to her bag).

School digest

  • We have a new networking teacher. He's okay, but sometimes he wants to explain things he doesn't know much about and messes up with the explanation. The best example is when he started explaining the fork syscall and said that the child process starts executing from the beginning, which is not the case: both processes continue the execution from the same point, but the kernel returns a different value for the child and parent, so they can execute different code. Just to make it clear: I don't worry much someone makes mistakes when they are forced to talk about other areas that aren't their focus, the problem is that he didn't need to explain it and he tried to knowing it wasn't his strong point. But besides this issue (which is almost always minimal) he is good. And he is way better than our previous teacher anyway.
  • My programming teacher wants to talk to me about writing a paper. I have no idea about what, yet.

TV Series

I knew you were just waiting to see when I would start writing about the blog title haha!

Okay, these past days I watched a lot (for my standards) of TV series. I watch them on the computer as I don't have a TV and I really hate the Portuguese dubbing. I finished the first season of two series:

  • Common Law
  • The Last Ship

The first one is a comedy/action series, good for relaxing from work. The second one is emotionally heavy and has a lot of action, but it is not very good (I prefer deeper characters) but it is good. And the way they made an entry for the second season is... one of the best I have seen! Also it has a lot of navy stuff in it, and I love navy stuff. I recommend both of them.

Ah! Also liked the last ship because they have some bioinformatics in it too, not much but sufficient to get my attention (as do orphan black). By the way, the acting of that woman in orphan black is superb!

February 11 - 2016 at 00h

Hello folks!

I updated the nethack player (again) and now it actually looks like a player! You can experiment the all-new function of... pausing and playing! Exciting, isn't it?

Also found that our admin had installed fish! The only problem of fish is that it breaks every single script I have.

I am thinking about writing a fish-like-bash-compatible shell. I've seen a similar project at the atom discuss board, but I can't remember where the project is, and it was written in ruby (I don't like the idea of having a ruby shell, but this is just one of those nonsense "I don't like"s).

If I were to really write a shell, I would go with Rust... Hey! This sounds good! Let me take a look at some resources...

See you!

February 11 - 2016 at 00h

As promised who is interested in making a MUD?.

February 11 - 2016 at 00h