In the beginning of July we organised our first N47 Meetup in Macedonia. We spent 3 full days together eating, drinking and exploring (especially Lake Ohrid 🏊♂️☀️) this lovely country! Besides that, we also had to celebrate our newly built office in the city center of Skopje 🎉🥳 with a nice office warming party!
With little doubts in the beginning, big uncertainty and the questions in my head “Is this the right conference?”, “Should I’ve chosen another conference?”… But it happened and I’m satisfied at the end of the day with my choice. Some of my colleagues were surprised of my choice (Berlin), but yes, I can definetly say “It was not a mistake”.
So how was it?
Day 1: Social events
I’ve chosen to be with the walking tour group. There were possibilities to be in different groups like Bicycle group, Boat trip group… But this was my choice. We were split into two groups by 12 people and a local tour guide. We visited different spots, like the Memorial to the Murdered Jews of Europe, the popular Checkpoint Charlie, the Berlin French Cathedral, the Brandenburg Gate, etc…
The day finished in a big restaurant where we received our conference badges and promo materials of the conference. It was a very relaxed atmosphere and new chance to meet and introduce yourself to new developers. Some of the participants were professionally oriented and immediately started to talk about iOS topics. Some were on their way to the bar ordering german beers and the popular “wursts”. There also was a small group that played some kind of table tennis game. I’ve attended in all of these social activities.
Day 2: Opening day of the UIKonf 2019
After the opening words and the short introduction, the conference officially started. The first day consisted of 9 presentations. The strongest impression of the day was the presentation of Ellie Shin about Mock Generator for Swift and how they at Uber solved the problem of mocking. They optimized the app to build the mocks in around 10 seconds instead of the previous time needed; it was more than 1 hour.
One of the best presentations of the day was from the lovely Julietta Yaunches. She talked about consistency principles in programming, how to keep the coding style consistent and not make big changes every day, how to decide when to introduce something new in your code, etc.
It were good presentations from Kristina Fox about Internationalization of the iOS applications, and the opening presentation from Kaya Tomas about Accessibility and Inclusion in the apps. A topic I wasn’t aware before this conference.
I also have to mention the presentation of Glenna Buford about how to organize the network stack of your iOS application.
The day finished with a social event named Ambassador’s dinner. The local participants of the conference had the task to show the other participants (foreigners, including me) the typical restaurants and bars in Berlin. I was in a group that visited Hofbrau Munich Restaurant in Berlin. We had some good discussions with colleagues from all over the World. Throughout the evening we enojyed some tasty good german beer and pork meat.
Day 3: 2nd day of UIKonf 2019
The second day had 9 new presentations and 9 new speakers.
The best of the day in my opinion was the presentation of Kate Castellano. She talked about applications with backend driven UI.
Among the better presentations was of Neha Kulkarni about Advanced Colors in Swift.
I will also mention Erica Sadun. She talked about Swift Strings. In her presentation she showed best practices about using strings in Swift, interpolation of strings, etc.
Also there was a choice to visit 2 workshops on MyTaxi boat stage near the conference hall. I visited this stage and it was about the management process, recruiting and organizing the teams in MyTaxi company. The 2nd presentation was about Tips and Tricks they are using for testing their apps.
The day finished with a big party in a local restaurant near the river Spree. It was another good party. A lot of talks with colleagues, a lot of drinks, good atmosphere. All finished at 1:00 am.
I can freely say it was a good conference, perfectly organized… I didn’t regret in any moment that I’ve chosen this one in a bunch of other conferences. First of all, I’ve learned a lot of new things, I’ve heard about topics I wasn’t aware before, I saw how it would be to talk infront of 500 people.
Maybe in these events the most important thing is the social component. New faces, positive people, talks, sharing experiences, enlarge your professional contact list.
I’m not sure what was the intention of the organizers to have only women speakers. 18 speakers – 18 women. It was not explained, but we cannot complain because the speakers dealt with the challenge perfectly.
Worth the money, worth spending my time at UIKonf in Berlin. I have a feeling I will visit it for sure again in the future.
Who is Saygin Yalcin?
Saygin Yalcin was born in simple conditions in Bremen 🇩🇪 and after his studies, he moved to Dubai 🇦🇪 with a single backpack 🎒 but with a goal a vision to become a successful entrepreneur. 🤔 And he reached his goal! 💪🏻With sellanycar.com and a big deal (
What do we get out of the conference?
In 2019 we established a new unit in our company called LABS. 🧪 Because as a
What are our expectations?
Our expectation is to have also the view outside the daily B2B. To motivate our teammates to go for the next thing and to show that as a digital agency we are ready to change the world. To make simple manual processes automized and to have a bigger vision than just implementing tickets. Technologies are a tool to create awesome solutions and we want to create awesome solutions for businesses but also for people.
When: 📅 Sa. 11. May 2019 19:00 – 23:00 MESZ
Where: 🏢 Hugenottenhalle, 63263 Neu-Isenburg
Travel: Drive to Frankfurt by car 🚗 – not a big deal
Price: 99 EUR 💵 per ticket
Want to meet there? Just contact us.
After more than 6 years this will be my first conference. This time as a guest. I remember well the moments of my presentation in Baku, Azerbaijan in 2013. Stressful experience, a lot of sweat, with my suit that was one number larger than it should be. That was 2013 and the topics were economics and management. Now I’m an experienced iOS developer and going to Berlin for a conference that should give me new ideas for personal development, but also to give me
The venue of the UIKonf is RADIALSYSTEM V in Berlin.
From 26-29 May 2019 in Berlin, some serious iOS developers will come from big companies that will present their experiences in the iOS World.
The motto of the conference is simple:
“UIKonf is an independent conference for serious iOS developers”
For this conference, the organizers decided to have only female speakers. All will come from big companies and with big experiences. We have female iOS developers who work or worked for Uber, Slack, LinkedIn…
The travel expenses are the cheapest for this conference viewing from my perspective. Fortunately, we Macedonians have direct flight connection to Berlin. The cost is around 150€.
The ticket to attend the conference costs 539€.
They are also offering free tickets to members of underrepresented groups in tech (this includes disabled people and generally people who are unable to attend without financial assistance).
The accommodation is something that is not completed from my side. The hotels near the conference building costs around 100€ per day.
This conference has an excellent organization.
The first day 26 May is the day for social meetings, time for visiting places in Berlin, acknowledge the other attendants and will finish with a kick-off party where the people will take their badges.
Next two days 27 and 28 May are the days when the speakers will expose their presentations. 30 minutes per presentation with question and answers part of the end of each presentation.
29 May is the last day. This is unofficial part of the conference and the people can meet with the sponsors, dissect code problems in lab sessions with experienced experts, signup for a workshop or just hang out and code with new friends.
I have big expectations. The names of the speakers, their experience, the companies they worked for are guarantees for something big and something good.
I’m going by myself and expect to meet new people, make new friendships, share experiences.
Berlin as a city is something new for me. I had heard very good things
With the correct size of my suit this time – it should be a good experience in my life.
As we have already mentioned on our culture page we have planned a budget 💰 this year for all of our employees for further education purposes. Therefore everybody can go to a conference, workshop or the like. On our blog you will find posts from our employees about the individual events, what the expectations are, what the reality on the event is, maybe some surrounding information why it is worth to visit a conference at a specific city, maybe what is not recommendable and at the end what was the key learning.
So let’s conquer Europe … 9 metropolises, 12 different events:
The opening event started this week – Jeremy and Shady are in Bucharest 🇷🇴 to visit the Voxxed Days. Maybe you have already read the corresponding blog post and their expectations about the trip or you have already seen some pics on twitter. If not – you can find the post here. We are curious about their updates
To see all other scheduled events you can have a look on our conference plan 📆:
|Date||Event||City / Country||Who joins|
|March, 20-22||VOXXED DAYS||Bucharest, Romania||Jeremy, Shady|
|April, 3-5||FRONTCON||Riga, Latvia||Stephan|
|April, 5-6||JPoint 2019||Moscow, Russia||Miodrag, Boris|
|May, 5||SAYGIN YALCIN||Frankfurt, Germany||Fatih|
|May, 16-17||SPRING I/O||Barcelona, Spain||Antonie, Amit|
|May, 26-29||UIKonf||Berlin, Germany||Dimitar|
|June, 1-2||JSConf EU||Berlin, Germany||Marijan|
|June, 6-7||WAD World Congress||Berlin, Germany||Lukasz|
|June, 24-26||DEVOXX POLAND||Krakow, Poland||Stefan|
|Sept, 2-4||adaptTo()||Berlin, Germany||Amit|
|Nov, 1-2||DEVOXX UKRAINE||Kiev, Ukraine||Jeremy, Shady|
|Dec, 5-6||dotJS||Paris, France||Youssef|
Now you know where to meet us and maybe you got some ideas if you are also looking for an interesting event this year. If you have questions to an event, want to meet us somewhere or you have some insights for a specific conference or city please use the comment box below or get in touch with us directly – we are looking forward to your feedback – or to meet you at a conference ✌️!
Only a few weeks left until I go to my first tech conference this year. Travelling means for me learning something new. And I like learning. Especially the immersion in a foreign culture and the contact to people of other countries makes me happy.
It’s always time to grow beyond yourself. 🤓
BUT why visit Riga just for a conference? Riga is a beautiful city on the Baltic Sea and the capital of Latvia. Latvia is a small country with the neighbours: Russia, Lithuania, Estonia and the sea. AND it’s a childhood dream of me to get to know this city. 😍
The dream was created by an old computer game named “The Patrician”. It’s a historical trading simulation computer game and my brothers and I loved it. We lost a lot of hours to play it instead of finding a way to hack it. 😅
For this dream, I will take some extra private days to visit Riga and the Country as well. 😇
The most important preparation such as flight, hotel, workshop and conference are completed.
Furthermore, I also plan to visit some of the famous Latvian palaces and the Medieval C
Some facts about the conference
There are four workshops available on the first day:
- Serverless apps development for frontend developers
- Vue state management with vuex
- From Zero to App: A React Workshop
- Advanced React Workshop
I chose the workshop with VueJS of course 😏 and I’m really happy to see that I can visit most of the talks in the following days. There are some interesting speeches like “Building resilient frontend architecture”, “AAA 3D graphics” and secure talks and server-less frontend development. Click here for the full list of tracks.
Above all, I’m open to events to learn new things. Therefore, I have no great expectations in advance. So I’m looking forward to the
- VueJS & Reacts parts
- Visit the speakers from Wix, N26 and SumUp
I’m particularly curious about the open spaces between the speeches. I will be glad to have some great talks with the guys. 🤩
For my private trips:
- The Riga central market (constructed by reusing old German Zeppelin hangars)
- Visit some of the famous Latvian palaces
- Visit the “House of the Blackheads“
- Jump into the Baltic Sea
- Enjoy Riga’s night life
- Enjoy some typical Latvian food
That’s all for now
to be continued…
People of different religions and cultures live side-by-side in almost every part of the world, and most of us have overlapping identities which unite us in very different groups.Kofi Annan
We can love what we are, without hating what- and who we are not. We can thrive in our own tradition, even as we learn from others, and come to respect their teachings
Over the past few years, the field and management sector of major companies have a big problem of how to arrange the days of their employees, something that will give a bit of strong light and positivity, which will avoid monotony and on the other hand give a great impetus to their creativity and vision, much greater motivation and strong spirit in overcoming further obstacles and challenges. The problem is even greater if companies are stationed in several locations in different countries, so that communication is interconnected constantly through technical apps, almost virtual, simply a voice, perhaps a shy picture or video call and of course mostly text and chat conversations.
It is very often the case that the company hierarchy is a list of members of different cultures, nationalities, so that it becomes even more difficult task of organizing team buildings. But on the other hand, it is one of the reasons why that makes them special.
The differences are part of us, the differences are making us so special, and of course differences we know well and we have become accustomed to it.
Team building, joint team events or hacking term in the IT industry are part of every company agenda, happens every year and they often happen few times per year.
It’s a chemistry thing, it’s the time where you can share your points of view, your thoughts, your personality, your creativity, your vision, it’s the time when you are not representing just yourself, but also your culture, your contry.
But, the idea of creating an event, that will bring together – Team Building and Hackathon event? Yes, we did it and we arranged and created. Almost one week, gathering the team together. The Family!
24 hours of work, pure juice of 100% creativity, dedication and hard work. Commitment always brings success, and YES some of the team after the deadline and voting for the best team and best project made, they had a shootout with the Champs Titles and Presents. Absence Hub – Resource Guru and Absence.io connector TEAM did it, they collected the votes and drove all the way through like Real Madrid in Champions League.
Yes, it was worth it! Title goes to the winners!
The event was a success, the employees loved it. And all of them are sharing the same opinion, maybe sometime and somewhere everything is not 100% perfect, but even the misses are part of that. People create, sometimes in the process of creating always is something missing, but in the end, the finish line and the title – that’s all what matters!
Final conclusion – 100% success and that’s what all IT companies need, at least once, but it’s good to be twice or even more per year. It’s chemistry, it is fun, it is releasing the creativity inside all of the members of the company that doesn’t have a chance before to describe themselves with their own words.
It’s a fact that programmers find Hackathons the perfect venue to unleash their ideas, it’s often that this kind of events produce ingenious products or ideas, or even they show the real potential, creativity, talents of employees. It’s an easy challenge, but the benefits of it can be great for the organization, company or network. And together with team building events, it’s double more fun and joy for the team.
The last moments after the end of the event, the euphoria of the faces of all colleagues, but also a bit of grief over why it was all too short, everyone wants more time together. But that’s the idea and motivation for the next event. Where, how, when, what’s next? Give your thoughts and ideas, let’s take a look and decide it together. Мaybe somewhere on the sea, fishing, hiking, or mountain and skiing? Or on some great concert with DJs or maybe Stones or U2?
Afterwards, travelling back to home town, sitting in the aeroplane and thinking about the past few days, wow it happened all so fast and the days flew like a fast cigarette break…
The A-team surrounded with lots of positive energy and good memories. And the question is what next,where to go next, what should we arrange next?
I think, whatever, just bring it on baby!
This is the real deal.. Prepare your battery, connect to a good network to get thousands of SMS. Whoever you are, maybe you come from a faraway land, maybe you don’t understand my language, maybe you are from a country that I never heard the name of…
One thing is for sure, you will get the SMS. So, whoever you are, wherever you are, our app has special skills which will make this world easier for you, starting with getting an SMS 📲🤩
Having such nice days during our Hackdayz did not prevent us from thinking into adding more practical benefit to our company by improving the current app. And after we had our lunch, we had the power to start working, nevertheless, my vegetarian lunch did not taste good at all.
Our aim was by the end of Hackdayz that the app should be released in PlayStore and the code should be made as open source for further improvements!
The app should have:
- Rules: number and where it should be posted
- Environment: Slack, Email, and others…
- Some new settings: such as the ability for the user to set a password… (we were so optimistic)
- What is the problem you want to solve?
- Who experiences that problem?
- How do you want to solve that problem?
- Why is this a better solution?
Having such a funny combination of a team with a front-end developer and test manager trying to develop an android app included so much fun these days, as we were literally underdogs. But, just to get our spirit up, we went to the gym, and then to the sauna where I could not even see my hands, and finally to the swimming pool.
Although, we were so ambitious that we set our plan to create an app with an infinite number of environments, and with so flexible rules (such as amateur dreams). After some time as Thomas A. Edison stated “I have not failed. I’ve just found 10,000 ways that won’t work.”, we realized that we are not gonna create the app as it actually was planned 🤯. Nevertheless, the days were cool enough to make us laugh while we were failing for several times.
Youssef was really ambitious that he told me “I will never go to bed mad. I’m gonna stay up and fight!”. After 10 minutes, each of us went to his room to sleep 😴. Due to the effort, I spent during 3 hours in the gym, sauna, and swimming, I wanted to sleep because by looking at my hand I couldn’t recognize how many fingers I did have.
The next day, we started working again. I wanted to start now with my real work, since when kings start the party 🎉, my first task was to find a beautiful design. I decided to choose a simple design due to the time pressure. Besides improvisation is too good to leave to chance.
And using the mentioned GitLab we were able to create the app.
We were somehow not so much satisfied with the results, actually shocked 😱😱😱!!!
- The app has been developed with the ability to add up to 5 environments. Unlike what we have expected to reach infinite number of environments.. such youth dreams 😅
- The app could not set the email as one of the environment due to inability to find a library via which the app can send the message to the email while it is in the background…. experience is simply the name we gave our mistakes 😄
Conclusion and implication
The app has been created successfully and applied to one of our android devices using +41 76 75x xxxx.
Future features and challenges would be…
1. Adding email as a new environment. Let us see how this gonna be manageable 🤔.
2. Adding password for the app. We are still so optimistic 😁.
3. Adding the ability to add more (unlimited environments) with the recycle bin 🧹 to remove them when needed.
By the end of the day, I just was totally shocked f the difference between what has been planned and what actually has been achieved. But, it was just a funny and exhausting experience.
The best way is the easiest!
You want to plan the next projects, but do not know which of your employees are available? Who is on vacation 🏖? Who is ill 🤒? Who is where?
Or you are planning your next vacation and you are swiping about the best hotel offers and places. But then a mail from your boss: Your request is rejected 👎. The reason is that there is even a more important project and your talent is needed there!
These were our problems
Both tools are the best for its use case. But why so complicated? Why so many tools? Questions, questions and more questions,…
- Can we make the absence requests easier for both sides?
- Can we create the entries in one tool for the others at the same time?
- In short – Can we optimize the process?
Our answer: YES, we can!
stay focused, be yourself and just do itBoris Karov (Senior Software Engineer)
Our winning team
But how could we win?
First, we should have a look at our current approval process.
It’s complicated, isn’t it 🤦♂️? You have to log in, then your boss – in our case Fatih – has to log in in both tools and has to manage the requests. We had a discussion about the tools, which we might use, and finally came up with the answer: Absence.io sends us every morning the absences of each team member via SLACK. 😍
A new idea was born
How can we use this Slack bot engine? Or can we create a new one?
We decided to create a new Slack bot for all out-of-office requests, to connect both tools and to make the approval process easier and faster.
After we achieved this milestone, we started with the project. For research and development, we shared the following tasks among each other:
- Boris mainly took care of ResourceGuru
- Stefan mainly took care of Absence.io and CI/CD pipeline
- and I of the Slack bot communication and node service
but there MUST exist an API for that!Stefan Maurer (Co-Founder & VP Engineering)
Let the game begin
We developed the first lines of code and sent the first API calls via Slack. Also, we figured out how to create slash-commands in the Slack bot UI and how to connect the commands to the service endpoints.
Then we created more useful and prettier messages to make the approvement decisions comfortable.
Both back-end guys had some troubles to learn how to write a nodeJS service (e.g. promises, …). And I had also issues in understanding the Slack SDK, but we mastered the brainfucks and achieved a lot in two short days:
- CI/CD with Gitlab Pipelines
- SlackBot deployment on Heroku
- User Slack command
- Absence is created in Absence.io
- Approver can accept / reject in Slack
And we won 😉
We still needed some other features for going live, too:
- Let Dev choose who the approver is
- Create TimeOff in ResourceGuru
- Add caching via mongoDB to keep users IDs
- Add handling to manage different user API keys
- Add i18n date formats 2018/12/14, 14.12.2018,…
- Support more formats like:
/remote 14.12.2018 morning /illness 14.12.2018 afternoon to 15.12.2018 morning
- @slack/client – official SDK for the Web API, RTM API, and Incoming Webhooks
- Absence.io API (find User, create Absence)
- ResourceGuru API (find User, find Resource, create TimeOff)
- Heroku and GitLab for continuous integration and delivery
- Ngrok for secure tunneling on dev environments for the endpoints
- And for the node service: express, hawk, morgan
stay the way you are and get better and better every single day for the rest of your lifeStephan Ullenboom (Senior Frontend Engineer)
There were two very funny and productive Hackdayz. We had some challenges with API keys, because of both tools assigned there keys to a specific user and not to a project. Also, it required many, many, many API calls to find the users and resources etc. However, we made it 🙌.
We got to know each other better and went the extra mile together to win the trophy.
...and now, we have a new challenge: defend our trophy 🏆 at the next hackdayz 😁.
Why we create our own Mr. Moody
Mr. Moody was implemented 👨💻, while attending our first offsite event Hackdayz18 at the Oberwaid in St. Gallen. Check out the video if you missed it! The idea was born in a short brainstorming session. Primarly we wanted to implement a Slackbot, because we already are Slack users for years now 💬. We really like to “slack” and love/use several bots already. Of course we also have to deal with new technologies, that might be used for future projects. Besides that, the idea of customizing our own application according to fit our needs is a plus ➕.
Mr. Moody is based on the niko-niko calendar which is a simple practice to track the team mood, conventional used on a board with stickers or written on paper. It allows every team member to track his mood at the end of a work day. The Japanese word “niko” means “smile”; following a common pattern of word doubling in Japanese, “niko-niko” has a meaning closer to “smiley”. This calendar is an information radiator and can be seen as an opportunity to be used on a regular basis (e.g. in retrospectives or dailies) for reflection, adaption and improvements.
Used as a slackbot, Mr. Moody will remind you via direct message to tell your mood and ask you if you would like to add a comment on that. The personal mood calendar and also the accumulated team mood is shown on a dashboard so the team can use it itself e.g. in dailies or retrospectives or team leads & managers can see how it is goig in the team(s) and see if there is action required.
Mr. Moody is a great complement to other metrics and will help the team identify impediments.
Technologies we used 🛠
Ngrok – https://ngrok.com/
A very cool, lightweight tool that creates a secure tunnel on your local machine along with a public URL you can use for browsing your local site. When ngrok is running, it listens on the same port that you’re local web server is running on and proxies external requests to your local machine.
Heroku – https://www.heroku.com
Heroku is a cloud platform as a service. That means you do not have to worry about infrastructure. You just focus on your application!
Botkit – https://botkit.ai/
Building Blocks for Building Bots. One of the good advantages to select botkit, is the ability to start a conversation using
bot.startConversation() with a specific user using their user ID or channel ID. Very easy to use!
How does it work? 🤔
Botkit is designed to ease the process of designing and running useful, creative bots that live inside messaging platforms. Bots are applications that can send and receive messages, and in many cases, appear alongside their human counterparts as users.
A best effort is made to generate a slackbot where a cronjob ⏱ should be run everyday at 03:00 pm. This job will do the following:
- We get from slack the list of all users.
- Iterate through the list of users. Afterwards, each user should get the massage, asking about his mood, which is like a variety between different options (e.g. very good, good, normal, bad)
- An interaction is done with each user, by asking each user if he/she wants to add a comment.
- At the end of each week, another cronjob is run to send all data, and feedback to a certain user or group of users.
An example of how Mr. Moody is interacting
Wanna try it out? 💻
Yes! The code is open source and everything else (technical setup process) is described in the README.MD
Some other issues and questions ⚠️
The implementation of Mr. Moody is not totally completed. Some points need to be covered in the future. Some of them are as follows:
- Storing the given rating from each user in a database, where later at the end of each week, a weekly report is generated.
- When asking slack for giving us a list of all users, where we iterate through each user to interact, the given list is not only for uses, but also for slackbots, and old users. This causes a problem when we try interact with each user, and results in exceptions. A filtering criteria should be done to filter only the current users from unused users, deleted users, or slackbots.
- ِA cronjob for generating a report and sending it on the admin, is not done in the moment. However, we need to see how the report should be generated, what type of diagrams should the report contain, etc.
- How do we handle Vacations/Holidays and avoid spamming employees while they are sipping Pina Colada at the beach?
- How do we handle external Slack users which maybe should not get a Mr. Moody message?