Portfolio

I first began playing with computers when I was about 11 years old. My first accomplishment was a website about Pokémon. I won't be putting that here because it's not that interesting and because, when I think about it, it wasn't that good. In fact, it was pretty terrible.

I then moved on to Flash when I discovered Newgrounds, a community website where users can submit Flash animations and games. This got me into programming in ActionScript. The rest is history.

Here is a collection of most of the stuff I've done over the years, either independently or during my education, in chronological order. I try to put in as much as I can but since some of these projects are very old, it's not always possible to find screenshots or source code.

2014 and beyond...

For a more detailed look into my personal and professional projects since 2014, please check fullrange.ch

2013

I decided to join the organization comittee for the Baleinev Festival which is held yearly by students of HEIG-VD. It attracts more than 1500 festival goers.

Pimp My Wall running on May 24th 2013

Pimp My Wall

Project Leader at Baleinev Festival

Pimp My Wall is a giant, 300m2 interactive screen on which anyone can draw with their Smartphone.

When I joined Baleinev Festival, I wanted to bring something special to the festival. Pimp My Wall was born because the festival needed a new, strong identity.

Pimp My Wall was an ambitious project because it required 26 beamers and computers, lots of logistics work, and a lot of staff to set-up. I was in charge of everything, from communicating with the IT department of our school to manage the gathering of those projectors, to writing most of the software and writing press releases.

Pimp My Wall receieved a lot of media attention, including 2 articles in 24 Heures, 20 minutes, Rouge FM and La Région. It was a great success, with over 1600 drawings in one night.

  • Project Leading
  • Java client/server
  • Mobile HTML5/JavaScript
  • Large-scale logistics

Xylobot

Work of Diploma at HEIG-VD

Xylobot is a humanoid xylophone-playing robot. It was conceived and built in 2012 by another student.

The main goal of this project was to program Xylobot in a way that could make it play at high speeds. The other objective was to create a User-Interface for Xylobot that could allow anyone to compose music for it.

Using technologies such as C++, C# and WPF, I was able to make Xylobot play at a level that would make even the best xylophone players green with envy.

  • Real-Time programming in C++
  • User-Interface conception and programming in C#/WPF
  • Mechanics and automation

2012

Because of my studies taking up a lot of time, I did not have much time for personal projects in 2012.

Screenshot of FlorianSegginger.ch

FlorianSegginger.ch

Personal project

This website serves as a portfolio and a résumé. It was built using Bootstrap and a little bit of PHP.

The goal of this project was to get acquainted with Bootstrap and to see just how quickly a pretty website can be developed. It was built in a period of 2 days.

  • Bootstrap
  • HTML/CSS/PHP
  • Typing... lots of typing.
Master/Slave configuration

Master/Slave module for synchronous serial communication on a CPLD

Team university project at HEIG-VD

The goal of this project was to implement a simple serial communication Slave module on a CPLD. This was a 2-person project spread over about a month.

  • Control Unit/Processing Unit separation
  • VHDL
  • Testing, debugging with an oscilloscope
  • Synchronization

2011

2011 was probably my most productive year. I quit my job as Technical Director because it was taking too much time out of my studies and I was starting at a new university. I still needed to fund my studies, however. This is why I had to take various consulting projects.

Screenshots of Loft Club iPhone app

Loft Club iPhone app

Solo project at Media Fun Sàrl for Loft Club

My first iPhone app. It allows clubbers to see upcoming events, event photos and listen to music mixed in the club.

The real challenge was to learn the ropes of iOS development and get the app into the App Store. A web administration panel was also developed for the client.

Streaming of music requires HTTP Live Streaming, an Apple-sponsored protocol which splits audio files in shorter segments and provides them through HTTP. Because our client wanted maximum simplicity, a transcoding server had to be put in place. This was a real challenge.

  • iOS development
  • App Store approval
  • RESTful API
  • Intuitive administration panel
  • Transcoding server using ffmpeg
  • HTTP Live Streaming
  • Three20 library
  • Push notifications
Screenshots of MyCityMag iPhone app

MyCityMag iPhone app

Solo project at Media Fun Sàrl

This was my second iPhone app. It allows city-goers to see partners (contact information, photos, rebates), find the CityMag magazine on a map, see upcoming partner events and participate in contests.

Along with the app, an administration panel was developed to allow the marketing department to add content to the app, and also allows select partners to update their own information.

The app is now used by over 1'000 city-goers and new contests are added monthly. Technically, I learned a lot from making this app. I had a very strict deadline and the app was ready in the App Store on time.

  • iOS development
  • App Store approval
  • RESTful API
  • Intuitive administration panel
Mac, PC, Android phone and iPad playing live video synchronously

Cross-platform live video streaming

Solo consulting project for Cantharis S.A.

I was contacted to implement a live video streaming service using Amazon Web Services (AWS) and Wowza.

The challenge was that video had to be as synchronous as possible on all devices viewing the stream. I also had to learn how to use Amazon's services and set-up Wowza.

An administration panel was also developed which allowed an authenticated user to add videos in any format, change their order via drag-n-drop and add attributes. Because of how Wowza works, I had to install a transcoder on the server to allow multiple file formats to be uploaded.

  • Amazon Web Services
  • Wowza
  • ffmpeg
  • jQuery

Object Tracking with OpenCV

Personal project

I always wanted to learn image and video processing. I had an idea for a mobile game and had a specific idea of how to implement it. Unfortunately, because of university, I did not get the chance to finish my game. Maybe some day...

This is a test I made as a proof-of-concept to see how well the system would work. It turns out my algorithm is pretty solid even in weird lighting conditions.

The concept is rather simple: I use template matching and recalculate the template every time it is found. OpenCV was surprisingly easy to use.

  • C
  • OpenCV
  • Template matching

2010

In 2010 I was mostly caught up with development at Media Fun. We launched the SMS-gagnant.ch platform with good success and also redesigned a client's website.

Screenshots of SMS-gagnant.ch

SMS-gagnant.ch

Project at Media Fun Sàrl

Direct-marketing website which allows users to receive rebates and special offers by SMS for free.

This is my biggest project by far. With over 500k lines of code, it was a humungous task which took about a year to develop. There was a lot of back-and-forth talk with my associate who took care of the business side of operations.

I had to start from scratch, developing a member system, user interface, interact with an SMS gateway and do technical support for the users.

The website you see, however, is only the tip of the iceberg (about 20% of the entire source code). The administrative side of the website allows us to segment our users, send mass messages to thousands with unique codes, categorize and target users with specific tastes. Partners can also get access to anonymized statistics about their customers.

  • PHP+MySQL
  • HTML/CSS
  • Security (SQL injection and XSS prevention)
  • Very large project management
  • Customer contact
  • Translating business needs to IT solutions
Screenshots of BeatsBySwiss.com

BeatsBySwiss.com

Solo consulting project

Website for swiss beat producer. The website features many different sections as well as an administration panel.

This was made on a very small budget for a non-technical client. The challenge was to understand his needs and make the administration panel as easy-to-use as possible. It features a full WYSIWYG page editing tool.

I did not do the design, the resources were given to me by a designer and I had to tweak them before embedding them.

  • PHP/HTML/CSS/MySQL
  • WYSIWYG editor
Screenshot of Events-Gallery.ch

Events-Gallery.ch redesign

Team project at Media Fun Sàrl for Events-Gallery

I worked with a designer to redesign and restructure a popular event photos website. This website has about 500k unique visitors a year.

The challenge was that the designer knew next to nothing about HTML and CSS. I had to work with PDF layouts and prototypes. Pixel perfection was required on a large amount of pages.

  • Working with designers
  • HTML/CSS

2008-2009

Picture of MIDI interface

MIDI Interface on 8-bit microcontroller

Team university project at EPFL

A small MIDI interface to learn how to play the keyboard.

This was a 2-person project spread over 4 months. The goal was to learn how to create a project on an 8-bit AVR microcontroller. The entire project was coded in Assembly.

We had to document ourselves on how MIDI messages work and implement basic functionality (note, octave, length) on our microcontroller. We make use of an LCD display to navigate the menu and a 6x6 LED array to show a green checkmark or a red cross. We had to code the LED driver ourselves.

  • Assembly Programming on AVR
  • MIDI Protocol
  • Debugging with a single LED
Screenshot of SimGrain

SimGrain: capillarity simulator

Solo university project at EPFL

Grain simulation programmed in C using OpenGL. Multiple simulation modes, almost unlimited amount of grains.

  • OpenGL
  • C Programming
  • Grid optimization

2007 and earlier

Screenshot of The Fight For Glorton

The Fight for Glorton

Duo personal project

Flash game: Super Smash Bros. styled beat-em-up. 2nd place on the ArmorGames 2007 game contest.

This is the most complex game I've ever coded. Development was on a short deadline (3 months) because it was for a contest, and I worked hand-in-hand with an artist, using AOL Instant Messenger. It is all coded in ActionScript 2.0

More than 500k views on Newgrounds and available on many, many other sites.

  • Flash, ActionScript 2.0
  • Game development
  • Working with artist
Screenshot of Penalty Master 2

Penalty Master 2

Personal project

Flash game: play as the kicker or the goalie in a penalty kick match. 4th place on the ArmorGames 2006 contest.

This game was built in one week-end, seeing the success Penalty Master 1 had.

More than 250k views on Newgrounds and available (sometimes stolen) on many, many other sites.

  • Flash, ActionScript 2.0
  • Game development
  • Fast development