Covariance and contra variance. Say what ?!

May 09, 2017 by Madalina Botez in  Announcements

Enjoy the following series of interviews with the speakers, top-notch software crafters from across Europe, joining  I T.A.K.E Unconference, Bucharest, 11-12 May. Discover the lessons learned and what drives them to challenge the known path in their field.

Alin Pandichi, Software Developer at MozaicLabs and facilitator of the monthly Coding Dojo meeting that is part of the largerBucharest Agile Sofware Meetup Group, will share during his talk at I T.A.K.E Unconference more about Covariance and contravariance.

 

#1. Please share with us 5 things you did that helped you grow & become the professional you are today

I’ll answer this with a little bit of story telling about how I became a software developer. The first two things that helped me were attending the computer science oriented high school and college. There, I learned the basics of computers and programming languages. I also noticed how effortlessly I was solving CS related problems, so maybe I was onto something.

Number three: I got my first job straight out of college, developing a Swing rich client application saving data with JPA. This put me face to face with real world problems. I was faced with the fact that continuous learning is a must in this industry.

Therefore, number four on the list is learning. For the first few couple of years, I kept devouring every Java-related article I could find on DZone. With each one, I found out something new: a useful tool, a Linux terminal command, a development methodology, etc.

Last, but not least, is getting involved with local software development communities. I started attending meetups such as The Bucharest Agile Software Meetup Group and the Bucharest Java User Group. Gradually, I became an active member of both, giving a helping hand in organizing their events. On top of that, I also got involved in the wider community of Global Day of Coderetreat. My talk at I TAKE 2017 is one of the occasional opportunities I get to share what I know.

 

#2. What challenges will the participants find solutions to during your session at I T.A.K.E Unconference 2017?

They will find it easier to understand the concepts of covariance and contravariance, and how they are applied in the world of programming. In my experience, it was very easy to forget what these two words meant. Not anymore.

 

#3. Recommend for the participants 3 sources you find inspiration from and would help them better understand you

I dream big, so my biggest source of inspiration is science fiction. My first serious SF encounter was with Frank Herbert’s Dune series. Out of the contemporary authors, I enjoy Neil Gaiman’s work very much.

Whenever I get a chance, I tune into Nick Francis’ podcast called Quiet Music. It is a blend of low beat music of various genres: electronic, jazz, instrumental, folk, light rock, and so on.

Cinema is one of my other hobbies. I am very much interested in following every film festival happening in Bucharest. Also, the Romanian cinema of the past two decades has offered many gems so far, and it continues to do so.

 

Want to join Alin and ~300 software crafters from around Europe?

Register now for I T.A.K.E Unconference 2017!

Immutable data

May 05, 2016

Enjoy the following series of interviews with the speakers, top-notch software crafters from across Europe, joining  I T.A.K.E Unconference, Bucharest, 19-20 May. Discover the lessons learned and what drives them to challenge the known path in their field. 

Ricardo J. Mendez, founder at Numergent, is a software developer with 20 years of practice. He will share in his talk at I T.A.K.E Unconference 2016 more about immutable data.

 

i-take-unconference-speaker.004

#1. SHARE TOP 5 THINGS YOU DID THAT HELPED YOU GROW & BECOME THE PROFESSIONAL YOU ARE TODAY

Starting my own business, leaving the comfort of a company where you get a certain sense of security by deriving a regular salary, and having to deal with the hidden iceberg of new skills  I had to learn but hadn’t realized I didn’t even know about.
Joining my first start up, which wasn’t the same as a usual job, nor with the degree of control of just running my own business, was a great learning experience on how to deal with uncertainty while still aiming to provide a measure of direction.
Realizing that, as a developer, your job is not to deliver code. Your job is to keep the user happy, and delivering code is only a part of that. It requires a mental shift from the technology-focused mentality one tends to have as an engineer.
Working with distributed teams, and learning to adapt to the different work and communication styles of people from different countries, has made a huge difference in adaptability, and has taught me to not assume the message is always getting across.
Going through several technology trends and epochs, seeing language and platform flame wars rage and abate, trying a bit of everything, helps come to grips with the idea that a language or a platform is just a tool, and it’s what you do with it that matters.

 

#2. What challenges will the participants find solutions to during your session at I T.A.K.E Unconference 2016?

The idea that being unable to modify your data can bring more flexibility is unintuitive.
However, the bigger our codebases grow, the harder it becomes to find out if a refactoring process, or even a seemingly small change, will have a negative impact. Test suites can reduce this uncertainty, but normally only inform us of a problem *after* we’ve made a change.  There’s usually no way to know, in advance, how time consuming the side effects of a modification will be.
A shift in mentality towards data immutability, whatever the language we are using, will help structure the code and functionality in a way that makes it easier to grow and change down the road.

 

#3. What else would you like to share with participants ?

I assemble and lead project-specific teams to tackle challenges involving interaction design, data and open source. I’ve been working on software for over 20 years, across multiple industries – from desktop tools, to banking and financial institutions, to healthcare, to gaming.
I usually work with distributed teams, as I’d rather take the expertise where I find it than expect it to be around the corner, and it leads to interesting, varied teams with different perspectives.
A voracious reader, of both technical and non-technical books, it would be strange to find me without one or two tomes in progress.  This extends to platforms and languages – I very much enjoy kicking the tires on both, always looking for something new to learn.

logo ITAKE 2016

Want to join Ricardo and many more software crafters from around Europe?Join I T.A.K.E Unconference 2016!

In-Process or Inter-Processes Communication at Deploy Time

Mar 03, 2017

Enjoy the following series of interviews with the speakers, top-notch software crafters from across Europe, joining  I T.A.K.E Unconference, Bucharest, 11-12 May. Discover the lessons learned and what drives them to challenge the known path in their field.

Florin Coroș, Co-Founder and Partner iQuarc, is a passionate software architect and developer who has been working for more than 10 years in a wide variety of business applications using Microsoft technologies. At #itakeunconf, Florin is sharing more about In-Process or Inter-Processes Communication at Deploy Time.

 

speaker-badge-professional-status-florin-coros

 

 

#1. Please share with us 5 things you did that helped you grow & become the professional you are today

 

There might be a fortunate series of events, which fit nicely with my personality and abilities.

One of the things that helped me a great deal, was the fact that I changed the contexts and projects often. Even if I worked for the same company and the same technologies for about 10 years, I have changed the projects, the clients and my role at least once in two years. It wasn’t something that I had planned, but I always wanted to learn and experience new things.

Change is always challenging and creates opportunity for learning and for professional growth.

Another important thing for me, I think it was the fact that I always look for professional models. First, I discovered Uncle Bob, then there were Martin Fowler, J.B. Rainsberger, Roy Osherove, Kent Beck, Juval Lowe, Jurgen Appelo, Richard Campbel, and many others (I remember having a slide with some of these guy’s pictures in one of my first talks I’ve given at a conference ☺ ). Reading their books and articles, and then trying to apply their ideas in my day to day work, inspired and helped me.

Attending to training and conferences is another important thing. The TDD workshop with J.B. Rainsberger, which I attended back in 2010 was a few years jump ahead in my career. After, there were many other high-quality training I had the opportunity to attend, like the IDesign Master Class with Richard Campbel, a workshop with Dan North, or a Requirements course with Kay and Tom Gilb.

Coding just to practice is another thing that makes a difference. I learned this at the Code Retreats and I’ve kept this good habit. From time to time I take a few hours and I just write code with the purpose of learning or practicing. It always pays back.

 

#2. What challenges will the participants find solutions to during your session at I T.A.K.E Unconference 2017?

 

In large enterprise applications, there is always the challenge of decomposing the system. From performance considerations we may end up loading all the services in one or two processes, ending up with a monolith, which doesn’t scale and it is costly to maintain. At the other end, we have one process for each service resulting in too many inter-process call hops to handle one user request, which is bad for performance and it may be costly to maintain.

I’ll show a way, which I’ve applied in some projects I’ve architected, on how to separate this communication concern from implementing the business functionality.

#3. Recommend for the participants 3 sources you find inspiration from and would help them better understand you

  • My blog of course ☺ onCodeDesign.com . There, it is more about me and my thoughts
  • .NET Rocks (https://www.dotnetrocks.com/) is a podcast I recommend especially to .NET developers, and also to any geeks
  • As a hobby, I recommend learning and playing GO. Even if it a time-consuming game, it is a very good exercise for the mind.

 

ITAKE_2017

Want to meet Florin, +30 international speakers and ~300 software crafters from around Europe?

Register now for I T.A.K.E Unconference 2017!

Remote pair programming

Apr 08, 2017

Enjoy the following series of interviews with the speakers, top-notch software crafters from across Europe, joining  I T.A.K.E Unconference, Bucharest, 11-12 May. Discover the lessons learned and what drives them to challenge the known path in their field.

Raimo Radczewski is a freelancing software craftsman living in Berlin, Germany. He’s organizing Berlin’s Software Craftsmanship Community where he supports craftspeople with professionalizing and sharpening their skills, but also reflect on their current practices and how they can work better as teams. At #itakeunconf he will be sharing about Remote Pair-programming. 

 

 

#1. Please share with us 5 things you did that helped you grow and become the professional you are today

I think the most important thing that shaped my career has been the Software Craftsmanship movement. I first went to an OpenSpace in 2012, then Coderetreats, then SoCraTes, then organizing OpenSpaces and such. The community has really supported me and helped me grow in every professional aspect I could think of.

 

#2. What challenges will the participants find solutions to during your session at I T.A.K.E Unconference 2017?

The most challenging part of working remote is keeping an inter-human connection to the person on the other side to make up for the tools that so rarely work. It also helps to use the least-broken tools and find a structure that works for the individuals that want to pair up.

#3. Recommend for the participants 3 sources you find inspiration from and would help them better understand you

I draw most of my inspiration from visiting and organizing events in the communities. Additionally, the Software Craftsmanship Slack Team is a great place to start discussing with craftspeople all over the world.

Want to join Raimo and ~300 software crafters from around Europe?

Register now for I T.A.K.E Unconference 2017!

Leave a Reply