I have been in Berlin for the last three months, interning at 6WunderKinder. Now is the time to pack up and head back home. Mixed feelings because, I am so going to miss the colorful city and I am so excited to be back in a warmer climate.
Berlin is entering the 7 month this winter and it is still snowing! Its probably Berlin’s personal welcome for the third season of Game of thrones!
Winter Game of thrones is coming!
This was my first time seeing snow, and now I’m no longer scared of the winter. Oh, I don’t mean I’ll stand guard at the Wall, c’mon!
My favourite were the long rides on the subways and buses, rushing past colorful graffiti and counting the co-passengers’ visible piercings.
Last week I took three days completely for sight seeing in Berlin with my cousin. (I give her all the credit for pushing me out of the bed on the cold mornings.)
Berlin is looks even more beautiful when it is sunny. I visited some of the museums on the museum island. The Pergamon museum was amazing.
We climbed to the top of Victoria’s column which stands in the centre of Tiergarten. It stands at the cross section of 5 roads and you stand looking at the Brandenburg Tor straight ahead.
Night time is the best for visiting the Brandenburg Tor. It looks beautiful and some artists perform on the road near it.
However, the most amazing experience I had in Berlin was when I reached the top of the Berliner Dom, successfully completing the walkway to see the whole city from the top of the cathedral. The walkway is long and walking all the way alone to reach the breath-taking scenery was a memorable experience. The bridge over spree and the super long TV tower look gorgeous from there!
Sitting by Spree sipping coffee, with local musicians playing soft music, in the evening, is one thing I wish I do before leaving Berlin.
The other is taking a ride on the bus number 100 which takes you around all the important and beautiful places in the city. Very useful for someone in the city for a short while.
I didn’t quite get addicted to Club Mate so I don’t know if I can be called a true Berliner, yet but I do feel the urge to go and satisfy the painter in me on the walls.
This trip also made me more appreciative of all kinds of food. A maximum of 15 minutes of walking will bring you to restaurants of so many cuisines. The city has people from such a variety of cultures that you get to try a lot of new food here. Of course it is a drawback if you’re a vegetarian, which is the case with me.
Here are the five most awesome things I fondly recall about my summer internship at SlideShare this year:
- I’m in!
SlideShare had been acquired by LinkedIn only a few days back and this was visible in the office. I was introduced to the entire team, most of them wearing their LinkedIn tees.
I was nervous on the first day but they turned out to be a totally amiable and excited bunch of people.
I worked with the backend team. Akash, Shishir and Arpit were my team and mentors.
First couple of days meant a lot of new words thrown at me. Shishir and Akash carefully explained how SlideShare functions as a team and how the backend of the product is laid out. Honestly, I could hardly make sense of all the things but now I realise they are some of the most important things I picked up.
SlideShare is a bunch of about 55 people and doesn’t have a formal internship program in place. Yet, they were most prepared for the interns. The interview process was smooth and quick. A couple of detailed interviews and all was set.
A project was discussed, planned and goals were laid out. They are very careful about understanding a student’s experience and expectations. The best thing about their mentorship is that they perfectly balance “let-her-figure-it-out-herself” and “lets-work-on-it-with-her”.
- Buzzwords at the lunch table, not!
Their purpose changes all together once you have the SlideShare team together, either at the lunch table or on a Friday evening! You bring up one of the buzzwords to the lunch table and you’ll sure trigger off one of our geeks.
You laugh here, admire each other’s food, share it may be, pull each other’s leg but don’t speak of code!The lunch table is also where they give you a warm welcome. While you’re a newcomer, they won’t spare you – not from exercises to break the build with your commit, and not from their jokes or TT matches.
And in a week, I was following all their nicks!
- DevelopHer Hackday
LinkedIn and SlideShare often have hackdays. One that they organized together – DevelopHer, happened in the end of June.DevelopHer was a women’s hackday, running parallel in Mountain View and Delhi.
This was my first time for 2 things: the first hackday I participated in and the first time I met so many hacker women together!
My team mate, Mansi, who travelled all the way from Mumbai, brought with her an awesome hack idea. We did start a bit late but next morning we had our hack ready.
The brainstorming, the excitement, staying up all night, the final bug fix, the generous supply from the kitchen – it was an unforgettable experience.
- Eee – o – dee: The lessons I take back
- Working in a team: I learnt how working alone on a project, remotely, and working in a team, on-site, are different. I learnt to share the progress of my project with my team. They always had great inputs to give and at the right time.
- Communication: It is important the way you put forward your research, progress and ideas. The daily morning SCRUM was what set the day productive.
- An LGTM: I have worked on a couple of other summer projects, but here I understood what it takes for the team to do several deployments a day – speed, testing, code quality and some serious R & D. The final ‘LGTM’ or ‘Ship it!’ on your code review is your trophy!
They are a bunch of passionate devs and designers, friendly, content and very welcoming. I left after a surprise cake and a short good bye note.
SlideShare guys: Thanks for the wonderful experience. You guys are always missed.
I am currently at the Desktop Summit in Berlin. The city is awesome and it has been great walking around the cathedrals, talking boat rides and clicking lots of pictures.
Right now, I’m testing this work in Karbon, which has superior SVG support. This is nice because a lot of the code is shared in Calligra. Once the UI is done in Stage, I will be testing there.
This is the work I’ve done so far – for those who don’t like long posts, scroll down to a video of making a short presentation and my presentation at the DS.
Make some SVG-related classes used in Karbon, generic.
Karbon had good SVG making tools. So, I first made these SVG specific classes generic and ported them to a new lib, ‘libsvg’.
However, later Jan Hambrecht started working on a new library for SVGs, with the aim to promote SVG support. Thats a great idea.
So for now I am using my own ‘libsvg’, but once his library is done, I will remove my library, and use his, for it will be a more generic and better one.
Making a new shape – PresentationViewPortShape
A PresentationViewPortShape or PVPShape for short, is ‘[ ]‘ (square bracket) – shaped. It is used to mark out a region on the SVG poster or canvas. The shape is a view port.
Imagine a huge poster, where the camera frame moves from one portion to another instead of the poster moving itself.
You can even add a viewport inside a viewport! This lets you display an idea first and then zoom in to the details of it.
The shape was a nice idea from my mentor, Thorsten Zachmann.
Saving and loading of a PVPShape
This was simpler. I save the rectangular region marked out by the PVP as an SVG ‘rect’ and save the attributes for animation as a custom defined element, ‘calligra:frame’.
The ‘hide’ attribute of the custom element is kept to be ‘true’ always, so that only the contents of the view port are visible without the rectangle itself been drawn around it.
This gives the effect of a continuous single canvas.
Tool Options for the PresentationViewPortShape
This is what I am trying to finish off at the moment. The tool options will let the user set the animation properties of the view port.
Design an intuitive way to adjust sequence of view ports in the SVG editor, may be by inserting an arrow between 2 view ports. An arrow shape?
Using the ‘sequence’ attribute of the ‘calligra:frame’ connecting arrows will be drawn on the canvas while the user is editing the presentation in Stage.
Integrate this tool in Stage
So far I have been testing my work in Karbon. I will now work on the UI for the new mode in Stage to make these presentations.
Video and presentation
The SVG presentation I displayed at the Desktop Summit can be found here. Use the left and right arrow keys, space bar or the return key to run the presentation.
(Doodling credits: Aditya Bhatt)
The conventional style of presentation is a slideshow. But this paradigm is one in which thoughts are presented in a linear fashion. But certain presentations need the flow of thought to be shown more clearly. You would want to present your ideas in the manner that they occurred to you.
This feature will create for the user a single canvas on which he can add his ideas anywhere in the form of images or text (and videos in future?)
The user can jot down the content of the presentation on the canvas and mark out sections of the canvas as ‘frames’. The presentation will proceed from one frame to the next by spatial movements and rotations. Different zooming levels can be set for each frames: you can emphasize on a point and then zoom in to show the details.
You could even have frames within frame within frames. Think of it as zooming into a particular rectangular section of a ‘slide’ so that it fills up the screen. And then zooming inside that new section again into another section/frame. And so on and so forth.
Kevin Ottens used a single canvas SVG presentation at the KDE4.6 release party at Toulouse, France this March.
Similar presentations can be made online at Prezi; but these use flash :/
Right now, the community bonding period has started; I’m using this time to to get familiar with the community, the code base, and have started working on adding support for exporting a text shape to an SVG. This had been filed as a bug here.