This year's We Are Developers conference was held in Vienna, the agenda seemed pretty interesting with a lot of talks and workshops.
Our team at Zalando flew there to check it out, I will present my key learnings and notes from the conference:
Steve Wozniak - Fireside Chat:
- Steve chats about the past, present and future. He spoke about how he started Apple and how was it like back then as a “Startup in a Garage”
- He also talked about what he does nowadays supporting some startups and enjoying life.
- He talked a lot about Facebook and social media and how it is eating up life, he prefers enjoying life without smartphones.
- He briefly talked about bitcoin and cryptocurrencies and thinks it has a big place in the future.
AI: Tidal Wave - Joseph Sirosh (Microsoft)
- Microsoft has opened up a bunch of Azure APIs to developers which would help them bootstrap their apps and chatbots that use AI/Machine Learning/Computer Vision
- Joseph demoed how easy it is to bootstrap a smart chatbot.
He also demoed a project where some students bootstrapped a full app to help autism in France in just under 2 weeks. The project used the machine learning Azure API to learn from the user behavior and adapt to that, they got some pretty good results.
- Joseph demoed that using Azure APIs for machine learning and AI, for the JFK assassination documents use case, they were able to link documents together and find new evidence links linking to the case that they previously thought were impossible.
Future of the Web - Ilya Grigorik
- Ilya talked about how the web looked like a few years ago and how it looks like now.
- He mentioned that the web was designed responsive from day 1 (CSS,HTML) but people never used the responsive capabilities
- He talked about using slight improvements in code and infrastructure that would greatly improve the user experience
- He also talked about instant web apps and how this improves user experience (example twitter)
- He talked about PWAs and how smooth it is to the user (Starbucks app)
- We moved from Web Only → Mobile Friendly → Mobile first → Mobile only
- He mentioned how server side apps make the web more fluid.
- WebAssembly is also pretty big as it allows full sized desktop apps to be ported to the web (example: Autodesk)
- He talked about how Google is trying to enforce security (HTTPS) to the world by utilizing the power they have with Chrome
- He talked about how Google is prioritizing Mobile-Friendly websites in search results over desktop-only
Facebook: Bringing AR to Everyone - Elise Xu
- Elise from Facebook demoed how advanced AR has come, and how is it situated in the 10-year vision for AR.
- Currently at the 2-year mark, there are still a lot of work to be done, but they are on the right track.
- AR has come a great way and Facebook has its own AR Kit to produce quality AR apps via its platforms.
John Romero - Doom
- John talked about his journey in DOOM development and how they thrived as a small game development studio.
- He talked about how they worked as a team and how they were really enthusiastic about their product, they worked day and night, and on weekends.
- He talked about the time where they had to work on the Nintendo SNES which was a different architecture and they had to port their original code to SNES.
The Power of CSS - Una Kravets
- Una demonstrated a lot of CSS tips and tricks that would help speed up rendering and do more with less code.
- She demonstrated some new CSS tricks that can be used today to replace what we used to do with JS in the past, making it more efficient and flexible
Trunk based development - Matthias Huttar (OLX):
- Matthias from OLX talked about how Github flow style was a little bit too slow for them in case they want to develop faster and see more results
- They used Trunk based development which is essentially pushing directly to the master without blocking for pull request review.
- This approach has pros and cons, the pros being development faster and being able to test more features in less time.
- The cons being that the code is never reviewed, the code can be messy and untested at times, it might contain bugs
- They have mentioned that it will help in a startup-based environment where speed matters more than quality.
Successful, Accomplished, Depressed - Dennis Traub
- Dennis talked about his experience and adventure from being completely depressed and destroyed to feeling accomplished and successful.
- He talked about his story and how he was not welcome in his own family (due to family issues) and how that affected his life later on.
- He mentioned how people boast their success on social media and online, but this is not a measure of happiness
- He talked about perfectionism and how this slows down your accomplishments and achievements
- One of the main points of Developer Burnout is that our results are not tangible, code is just on the computer, psychologically we feel we are doing the same thing everyday with no physical output.
- We keep making/finding excuses of why we didn’t succeed so we can feel better and safe, example: Oh I didn’t pass the test because I didn’t really study, if I would have actually studied, I would have passed the test.
- There is always this perfect version of yourself that you never really do, but it is in your mind.
Chris Heilmann - Sacrificing the golden calf of coding
- Chris talked about best practices, how good code is less code (IKEA like), where code is very flexible and simple
- He also talked about re-using open-source software and components and contributing to them
- He also talked about automation and AI and how it is changing our every day thoughts
- He talked about everyday development tools and how easy it is to develop, lint, validate
- He spoke about how recruiting is so automated now and redundant that someone's Github bot got a job offer (by tracking its commits)
- He talked about automating redundant tasks so developers can save more time on more important issues.
Brenda Romero - Surviving as a game dev
- Brenda talked about her life as a game developer and how it was pretty strange back then to be a “geek” or a game developer.
- She mainly spoke about having passion and confidence in what you love and never stop at road bumps.
- Currently she and John Romero are living in Ireland creating their own games at Romero Games.
Sending money with Interledger.js - Stefan (Ripple)
- This talk was pretty interesting as Stefan from Ripple talked about a different future of the web using cryptocurrency
The main idea of his demo was to have everything on the web with a price; People would pay to use a website, just a small fee while using the website, which would be seamlessly “streamed” while they use it.
- He believes it would encourage creators to create more as only people who believe in their content would pay & watch.
- He demoed a video using a Chrome Extension that continuously spends money as a user is viewing a certain video.
Think of it as YouTube, and instead of annoying advertisements, you pay per minute of video using this extension, it would be a really small fee, but you end up only paying for what you use.
In this future you would not pay the internet companies for internet, but the content creators for their content.
- He also talked about the Interledger Architecture and how it compares to the TCP Protocol
The rise and fall of Jailbreaking - Nicolas Haunold
- Nicolas from Airbnb talked about the state of iOS Jailbreaking and how it has taught him a lot over the years.
- He joined the iOS Hacking community early on and learned a lot from the early days, how Apple implemented security in their software, and learned how to circumvent it.
- He spoke about Cydia and how it started as a tweak store, then transformed into a full jailbreak-store.
- He spoke about how Apple learned a lot as well from the iOS Jailbreak community and started to implement features (example: notifications, the AppStore, Widgets, etc..
- Nowadays Jailbreak is unfortunately really not so popular for two main reasons:
- Apple has almost implemented most of the features that people used to Jailbreak for.
- Apple have implemented really tight security in their platform that it has become very difficult & time consuming to find an exploit, if someone finds a really hard exploit they are more likely to sell it to governments or security agencies than release it to the wild (getting patched just a day later by Apple).
- He feels that the hackers/tweakers community will never die, but people will continue to modify the system as they like.
Bitcoin, Ethereum, Open Blockchains: Building Programmable Money (Andreas Antonopoulos):
- Andreas Antonopoulos is an avid speaker, author and expert about open Blockchain.
- He spoke about how blockchain technology is the future and how governments are afraid of it because they cannot control it.
- He mentioned that blockchain is unstoppable and no single entity can control or stop it.
- He mentioned that we are still way early in the blockchain timeline, people still don’t understand it, pretty much like the pre-internet era, when the internet first came out, people didn’t know how to use it and there were no much uses for it yet.
- Martin is a hobbyist programmer with a simple thought, he wanted to automate part of his life, particularly his window.
- He talks about his allergy and that he needed to open the window frequently, but the weather in his city was changing frequently so he had to somehow equalize the temperature
- He had the idea of automating this procedure, he purchased a temperature sensor, motor for moving the window, and an Arduino. With this simple setup he could program a simple Arduino program that would regulate opening/closing the window whenever the temperature changes
Joel Spolsky on Software
- Joel closed the conference with a great talk about how they built StackOverflow and how lightly they thought about it in the past. Today StackOverflow is one of the main go-to websites for development.
- He believes developers are confused by ill-written documentation and need some extra help from others who had the same problem.
- He explained how the voting system in StackOverflow greatly improved the system and allowed users to easily find what they were looking for, thanking the people who have answered in progress.
- Finally he mentioned that we should all be respectful to each other, he briefly mentioned internet bullying and how it would affect people asking questions online.
Facebook AR Workshop - Yash Sahay
- I attended a workshop by Facebook where they demoed how easy it is to create AR apps for the Facebook platform
- The AR Studio is more mature now and has a pretty easy drag-drop mechanism for creating AR Filters
- The interface and UX is similar to Unity3D and is really easy for starters (even non-coders can make a filter)
- Yash from Facebook presented a small demo on how simple it is to create an AR effect from scratch using AR Studio with a simple PNG image.
- Features like tracking the face, eyes, mouth come out of the box, example: (show filter only when right eye is blinking, etc..)
Tried out HoloLens @ Microsoft Booth:
- Unfortunately it is still far from perfect, or actually usable. We tried a BMW advertisement demo where you can customize your BMW car (color, rims, etc.) in AR
- The problem with Hololens so far is the clunky hardware (but that’s fine, I know it is still early for proper slimmer hardware), but the field of vision. The FoV is pretty small, so you keep losing sense of the AR world if you slightly drift off the AR vision square in the headset.
- The UX (air tapping) is pretty odd for first starters, and not so accurate, but I believe people will get used to it and find even more UX.
Real Security starts where Frameworks end : Security Workshop
- Thomas from SBA Research conducted a 101 Security workshop which explained the top 10 security topics (by OWASP) and how people are still falling for these pitfalls.
- He gave a demo of how simple XSS can be applied to the most simple pages, allowing the attacker to gain access to the filesystem and do what they please.
- He spoke about modern web frameworks and how updated they might seem, yet they do not handle basic security features like sanitizing input, etc..