Coding can give more fun than computer games – an interview with Ivan Katanić

After publishing an interview with Keshav Dhandhania we have decided to continue this project and present you other successful Spoj users, who can share their experience and all wisdom gained during their struggle with Spoj problems. Today we present you Ivan Katanić a finalist in International Olympiad in Informatics a member of Croatian national team in computer contests and a long-time Spoj user with a #11th place in a world rank and almost 1000 solved problems.


Hi, Ivan, starting from our first question: What are you doing now?

Right now I’m finishing my master studies. I’ve just passed the last exam and in the following semester, I will write my master thesis.

What are you writing about?

I’m writing about blockchain technologies. I will focus on smart contracts, in particular on Ethereum – a decentralized platform that runs smart contracts. This subject is not a new one for me as I wrote my bachelor thesis about Bitcoin protocol.

Is that choice connected somehow with your further plans and things you want to do in your professional career?

I didn’t think about what I will do after graduating. I previously thought that I will do something related to algorithms and data structures, area in which I will feel very comfortable, but in last year or so I started getting interested in machine learning and artificial intelligence, so everything is possible.

And from machine learning, you came to blockchain?

I first became interested in Bitcoin when looking for ideas for my bachelor thesis. My supervisor’s research area is cryptography, so Bitcoin was among the choices. I really liked the concept and decided to focus on Bitcoin protocol by studying attacks on Bitcoin anonymity. Back then there was only Bitcoin as a currency and maybe few other applications based on blockchain technology. In general, the concept was just not yet widely recognized. When looking for a topic for my master thesis, Ethereum was a very natural choice and continuation of research I did before. I am going to focus particularly on smart contracts as a concept and study Ethereum protocol as a solution.

I also plan to develop a decentralized application on Ethereum blockchain (dapp) – a collection of smart contracts. It will provide a platform for solving problems where solutions are easy to verify by code.

How is it going to work?

For example, let’s assume that factorization problem is supported on my platform. You might want to factorize big number (eg. RSA), so you could go to the platform and create a new factorization-problem instance with that number as an input and add some reward in ETH. It would then be enforced by the blockchain that whoever comes first and solves your problem instance (submits a factor to the blockchain), receives a reward.

Being rewarded with ETHs for providing certain solutions looks really interesting and we are looking forward to seeing your platform available online.

Let’s back now to your past, you are finishing your studies Zagreb, Croatia at the moment?

Yes, that’s correct.

But you have traveled a lot, you have worked in London, in California as well, so after you graduate are you planning to stay here or move somewhere abroad?

I don’t have any exact plans, but I will probably aim to be in London or somewhere else in Europe. There will be time for making plans after I finish my studies. Plenty of interesting places to work can be found in Europe and I will just have to search for one that fits me most. Of course, the US is also an option, but working permit makes it harder.

What about the works you did already, I have to admit that your CV is very rich as for student. For example, you worked for Facebook, how did you manage to get a job there? There are surely many students who are at the beginning of their studies, how can they get an opportunity to work for similar big companies without even getting a graduation?

I think the easiest way is to solve algorithm problems and win some competitions (laugh). But seriously speaking I get many emails from recruiters from the major companies. It’s not that I found them, they found me. As I have learned later talking with them, some have found me searching Spoj and noticing my ID in the rank under one of the solved problems. The other way is to participate in competitions organized by particular companies. However, you don’t get any advantage for free, it just gets you through that first filter, similar to top university diploma. Companies like Facebook need some form of filtering because there are just too many people who are willing and could potentially work there. In the end, you have to show your skills in the interviews, everything else doesn’t matter.

Coming back to Spoj. I’ve checked your profile, I need to admit it’s quite impressive you did a lot of work. But, maybe you remember the hardest Spoj problem you had?

There is actually one, that comes immediately to my mind – it was CCROSSX – Cross Mountain Climb Extreme. I was really impressed. Maybe it’s not the hardest one I have met on Spoj, but it’s surely the one I can remember after a long time. At the beginning, you remember everything you solved, but after so many, you just start to forget. Now I remember very few.

Did online judges, particularly Spoj, really helped you to improve your skills or was it something else?

I learned a lot of things on Spoj. It started about 2008, I was 15 back then. I went to one of programming camps in Croatia. On that camp, they gave us some lectures on algorithms and then showed examples on Spoj. We had a chance to solve them and compete with each other. This atmosphere of competition did a great job, I felt really motivated and after that camp, for few months I did about 5 problems a day.

I would just look at the problem and if I find it hard I would look on the ranks and find people who managed to solve them. Nowadays it’s much faster as there are lots of tips on the web, you can search the forum or Wikipedia and find some pieces of advice. I started with a very limited knowledge, but after solving few hundred problems I felt much more confident. Then there was a break, I didn’t do much for a year or two when being in high school, I visited Spoj only occasionally.

What would you suggest for the new Spoj users?

If you really want to learn algorithms and understand them deeply, you have to solve some problems. When you are at the lecture when you hear about it, you think that you understand it well, but only after you can try it in practice, to adapt it to a specific situation you will know that you have learned it.

Now, the question regarding your own experience – if you were once again 15 years old, what will you start with.

Well, it’s a really hard question. I think it would be good to start from some communities, it doesn’t have to be a good one, you just need to have the others who will help and motivate you.

But it doesn’t have to be a real world community?

Yes, online communities can also help a lot. I was quite lucky, we had a teacher who knew basic algorithms, that was enough to get started. She has shown us the idea, advised some books and encouraged us.

So the good teacher, who inspires is surely valuable.

Yes, definitely.

From your history, I think the main conclusion is that it’s good not to be a lone wolf, it’s better to work with others.

Yes, that is right. I have obviously worked on my own later, but at the beginning, the support of the others was priceless.

So you mean that there were just good circumstances?

In my case yes. I come from an Eastern part of Croatia. Most of the people I know from programming community are from the capital, so they obviously have access to a better support, academic courses, teachers etc. Meeting proper people and going to camps wasn’t an option for everyone back then.

I asked you about different projects, but could you tell me – what programming gave you, but not in regard to your work, education and but personally, that made you a person you are now.

It gave me a lot of fun, when I was younger I would probably just play video games, but now I don’t do this often. It gives me the same joy to solve some interesting programming problems. I think that after you reach a certain level, this should be even the mayor motivation – just to have fun. It also gave me the opportunities to travel a lot and network with successful people.

Thank you for your time and good luck with your master thesis!

9th edition of Deadline24, an international programming marathon

The finals of the 9th edition of Deadline24, an international team programming marathon, will be held on April 22-23, 2017. One more time, the best teams from all over the world will face each other on the virtual arena. Teams of three can register up until March 9. On March 12, 2017 they will be competing in the qualifying round.

Deadline24 is a programming marathon, organized continually since 2009 by Future Processing. Currently, it is an international competition and year by year it becomes more and more popular.

During the contest, the teams of three tackle algorithmic problems for 24 hours. Everyone can demonstrate knowledge, skills, creativity and perseverance.

The teams can sign up until March 9, 2017. Registration is available on the contest website www.deadline24.pl.

The marathon is composed of two phases. The qualifying round starts on March 12. For 5 clock hours the teams will be solving tasks and generating responses assessed by the verification server. This stage of the competition is remote. Then, the best teams of the qualifying round will meet at the 24-hour finals held on April 22-23, 2017.

Marathon’s venues are always closely related to the industrial character of the Silesia Province. Last year, the final challenge took place in Muzeum Śląskie in Katowice, four stories underground. In the previous years, the participants visited also Contemporary Art Gallery ”Elektrownia” in Czeladź and Guido Historic Coal Mine in Zabrze.

Last year’s edition gathered almost 1500 participants from all over the world. The qualifying round attracted contestants from Poland, Germany, Russia, Ukraine, Hungary, Great Britain, Croatia, Spain, Finland, Estonia, China, Egypt, Indonesia, Nigeria, Brazil, Bangladesh and India. Among the finalists there were employees of such companies as Google, Oracle and Yandex.

Deadline24 is organized by Future Processing, a company engaged in the global software market since 2000. Today it consists of more than 700 employees delivering high-quality systems for worldwide clients operating in different market sectors. Specialists from Future Processing have knowledge and experience in various fields and industries, such as healthcare, smart city, property management and environmental protection.

A key factor behind the company’s success is the people. They share their passion and knowledge with others during different events organized by Future Processing. Besides the Deadline24 marathon, there are also Quality Excites and Future Dev Day conferences and a project dedicated to students – DPTO.

The Big Update – more languages available than ever before

Ladies and gentlemen, we are proud to announce you that Spoj no longer supports over 60 programming languages .

We support way more and this is not our last word! We are really happy about this update and new versions of almost all previously supported languages.

 

The Big Update is here, with 6 new languages:

Format: Language name (version)
  • Nemerle (1.2)
  • Assembler x64 (nasm 2.12.01)
  • Kotlin (1.0.6)
  • Dart (1.21)
  • Swift (3.0.2) – Yes, we got it! Come and see some samples on Ideone
  • Octave (4.0.3)

 

New version updates

We also did updates for following languages, enjoy your work with Spoj and Ideone, our online compiler!

Format: Language name ( old version) -> (new version)
C++ (gcc 5.1) -> (gcc 6.3)
Perl5 (5.20.2) -> (5.24.1)
Python (2.7.10) -> (2.7.13)
Fortran (gfortran 5.1) -> (gfortran 6.3)
Ada (gnat 5.1) -> (gnat 6.3)
Java (8u51) -> (8u112)
C (gcc 5.1) -> (gcc 6.3)
Assembler x86 (nasm 2.11.05) -> (nasm 2.12.01)
Icon (9.4.3) -> (9.5.1)
Ruby (2.1.5) -> (2.3.3)
Pike (7.8) -> (8.0)
D (gdc 5.1) -> (gdc 6.3)
Haskell (ghc 7.8) -> (ghc 8.0.1)
Pascal (fpc 2.6.4) -> (fpc 3.0.0)
Smalltalk (gst 3.2.4) -> (gst 3.2.5)
Lua (luac 5.2) -> (luac 5.3.3)
C# (mono 4.0.2) -> (mono 4.6.2)
Bash (4.3.33) -> (4.4.5)
PHP (5.6.11) -> (7.1.0)
Common lisp (sbcl 1.2.12) -> (sbcl 1.3.13)
Scheme (guile 2.0.11) -> (guile 2.0.13)
C99 (gcc 5.1) -> (gcc 6.3)
Erlang (erl 18) -> (erl 19)
Scala (2.11.7) -> (2.12.1)
SQLite (3.8.10) -> (3.16.2)
Objective-C (gcc 5.1) -> (gcc 6.3)
C++14 (gcc 5.1) -> (gcc 6.3)
Assembler x86 (gcc 5.1) -> (gcc 6.3)
VB.NET (mono 4.0.2) -> (mono 4.6.2)
Perl6 (2014-07) -> (rakudo 6)
Node.js (0.12.7) -> (7.4.0)
C (clang 3.7) -> (clang 4.0)
C++ (clang 3.7) -> (clang 4.0)
Objective-C (clang 3.7) -> (clang 4.0)
D (ldc 0.14) -> (ldc 1.1.0)
Coffee Script (1.9.3) -> (1.12.2)
Fantom (1.0.67) -> (1.0.69)
Rust (1.0.0) -> (1.14.0)
Pico Lisp (3.1.1) -> (16.12.8)
Racket (6.1.1) -> (6.7)
Elixir (1.1.0) -> (1.3.3)
Scheme (chicken 4.9) -> (chicken 4.11.0)
Gosu (1.6.1) -> (1.14.2)
D (dmd 2.067.1) -> (dmd 2.072.2)
AWK (gawk 4.1.1) -> (gawk 4.1.3)
Forth (gforth 0.7.2) -> (gforth 0.7.3)
Prolog (gprolog 1.3.0) -> (gprolog 1.4.5)
Clojure (1.7.0) -> (1.8.0)
Go (gc 1.4.2) -> (gc 1.7.4)
Unlambda (0.1.3) -> (0.1.4.2)
Python 3 (3.4.4) -> (3.5)
R (3.2.2) -> (3.3.2)
Groovy (2.4.4) -> (2.4.7)
Nim (0.11.2) -> (0.16.0)
F# (mono 3.1) -> (mono 4.0)

From Spoj challenge to own startup. Short interview with Keshav Dhandhania

Spoj is online for over 12 years. After so many years our community has grown to almost 600,000 registered users. Within this group a huge amount of passionate coders were born, where are they now? We would like to invite you to a completely new series of short interviews with successful Spoj users, we will talk about their projects and their first steps in the world of coding. If you think that you have your own story that can inspire others, write to us!

We hereby present you our first interview with one of old Spoj users: Keshav Dhandhania, a co-founder at Compose Labs, a San Francisco-based company that has just released their first project Commonlounge (with a special community for Spoj users too!). You can read more about him by visiting his website and following him on Twitter


Spoj: You have created an online community, could you please tell us more about it.

Keshav Dhandhania: It’s basically similar to an open Facebook group. It came from the idea that all these people who take part in programming contests hardly talk to each other. Places like Spoj are just great for problem solving, but I find this community much more focused on competition and practicing. Here on Commonlounge we don’t want people to compete, we want them to talk, to share their knowledge, to help each other and therefore better understand things they do.

Commonlounge Spoj communitySo, it’s more of a supporting community.

Exactly. There are currently several tutorials, several problems and the solutions to these problems. Regarding practice and solutions, we have a new approach. The idea is: if you can’t solve a problem, you should not read the whole solution, you should only find the clue and go back to the problem. We have started three months ago but there is already a strong community and many people who have solved many problems and they are ready to help.

Your platform is online for a short time, but as I can see, there are already plenty of people using Commonlounge. Where are the users from?

The majority is from India but there are lots of people from Indonesia, Egypt, Bangladesh, Brazil, there are people from all over the world.

But they are here not only for one topic like coding or technology. Commonlounge doesn’t host just one community. I can even see the place for HBO’s Westworld fans!

Commonlounge - Westworld community

This is actually one of the most active ones, but the show has ended so I expect that the traffic will decrease in there as of now. Still, this is the proof how fast we are growing right now. He have already 2000 users right now, there were about 1000 only a month ago. So, it has doubled in a month. I am really thrilled how it would look like in coming weeks.

What was behind the idea to create such a platform. There are lots of social media platforms already in the web, is there something you expect to be different?

Lots of people love Facebook, but I don’t care much about this certain platform. My Internet social life was always more connected with places like Spoj or CodeChef (they also use Spoj’s Sphere Engine – author). It is not about who I know but what I do. I love programming and I love doing algorithms, so I choose places where I can do that. There are obviously people who are into poker or want to talk about TV show all day long, that’s what they do. So I wanted not a ‘Facebook’ centered around your social life but a ‘Facebook’ centered around what you do. It’s a bit closer to what you have on Reddit.

It’s a place with all these communities, you can join to the community you feel you are related to – you can join MIT Subreddit, India Subreddit, Poland Subreddit, there’s probably Spoj Subreddit. So they are focused around certain subject or activity. But Reddit is already +10 years old, they haven’t changed it at all, they are not doing it well.

Why is that?

In order to embed something on Reddit as well as manage community properly you need to use some code.

We as programmers find it easy, but there are people who are into cooking, to discuss movies, they are here for socializing and can find this coding part difficult. We can do all these things somewhere else – we can go to other website and play chess or poker, the others can decide that it’s better to visit Spoj and learn algorithm. But for those non-technical communities, the website must be plain and simple – let the people create content, talk to each other and enjoy building community.

Talking about community – how do you find your experience with Spoj, how did it help you to get to the place where you are now.

I learned about Spoj from the TopCoder forum, they wrote about high school programming competition. At that time there were no others contests. There were 6 months for the contest, one for each month, the prize was iPod – it was the newest one at that time. I practiced on Spoj and prepared for the contest. At the end of the month on the last day, I stayed up overnight and coded for 10 hours. Spoj had a policy of not updating the leaderboard in the last 24 hours. When the results came out after the contest ended, I was on top. It was really fun. After that I used Spoj for practice. When I went for my college school, which is MIT in Boston I don’t think they’d even consider my application without IOI (International Olympiad in Informatics).

Has this single programming contest really changed your life so much?

I cannot imagine my current life, doing my own startup now, without the things that happened earlier, without this practice and learning I had on Spoj. My life would be totally different without getting MIT. And I wouldn’t be on MIT without IOI, which would not happen without Spoj and TopCoder.

You said that after finishing MIT you’ve decided to work on your own startup, you didn’t want to move to some big company, big corporation, why startup?

I wanted to get some experience and preferred to be more independent. I don’t like to repeat things on a day-to-day basis. In startup you grow faster. Big companies, like Google are more like school – you know what to do, they tell you what to do, it gives me a school-like impression, maybe I am wrong but this is how I feel.

The interview was conducted over Skype in December 2016

Did you like the interview? Please share it with the others 🙂 

Early Bird Tickets for Lambda Days are still available!

We would like to invite all Spoj users to Krakow, to a next edition of Lambda Days! All our users can get special 10% discount, just contact us and we will give a special code!

Kraków, Poland, Feb 9-10

Lambda Days is a one of a kind experience in the functional world. To us Scala, Erlang, Haskell, Elixir, F#, Lisp, Clojure and many other emerging technologies are more than languages – they are new perspectives on how to understand and tackle challenges of every day work. We’ve sold half of Early Bird tickets since starting the sale! Make sure you get yours – register today:

http://www.lambdadays.org/lambdadays2017#register

Lambda Days is a two-day conference on functional programming and an experience you just can’t miss!

Wow our programme committee with your submission – join Jose Valim,

Rob Martin, Tomasz Kowal and others in our 2017 line-up.

Deadline: 1/01/2017

If you are interested in publishing your research results related to functional technologies, languages and applications, you can submit your paper to the Research Track. You can get published in the Special Section on Functional Paradigm for High Performance Computing of Future Generation Computer Systems (IF=2.430).

http://bit.ly/2dNO8N3

_______________________

Spoj team on SnackDown2016

Recently we had a chance to spend a couple of days with our oldest and best friends – the CodeChef Team. We have been providing backend for CodeChef for almost 8 years now and we are extremely happy and proud to see the obvious success of CodeChef! ‪#‎SnackDown2016‬ was an amazing event, and this is all thanks to the wonderful people who received all the participants and guest with extraordinary hospitality.

Thank you, Guys! From the bottom of our hearts!

13775843_10153802967447799_89276199146905116_n 13782076_10153802962857799_8783852903176969769_n

13782057_10153802962687799_7245563555173714015_n 13690734_10153802961822799_2008307263447139327_n

13726584_10153802961107799_3336197415406699588_n

 13731803_10153802957572799_7906646665527029630_o13691181_10153802957532799_7989752841849412438_o13735624_10153802957737799_2188371567359976753_o

13729154_10153802957522799_8429971549685336753_n  13754600_10153802957032799_7695810050325361759_n

IndiaHacks conference starts 19th of March!

Spoj.com is happy to become a Community Partner of Hacker Earth in their flagship event – IndiaHacks, the world’s largest developer confluence, which aims to encourage programming and celebrate the spirit of coding among developers.

indiahacks

HackerEarth is conducting this conference to celebrate the spirit of programming by spreading the knowledge and catalyzing the desire to create something extraordinary. The conference will have Tech Talks, Panel Discussions, Tech Huddles, Tech Hangouts. Additionally on 18th of March starts 18 hours of hackathon where the top coders from the phase I of IndiaHacks will compete against each other.

To register, visit IndiaHacks website

Location: Vivanta by Taj, 2275, Tumkur Road, Yeshwanthpur, Bengaluru, Karnataka 560022, India
Tickets: Starting from INR 499

Pragyan’16: Let’s Fracternize! Let’s Celebrate Technology!

pragyan
“Technology? There’s no future in it” said some people. But ideas shape the course of History and the giant leap mankind has taken shows us the impact of technology.
Technology is not an event; it’s just part of the everyday learning. And why not celebrate this part of our everyday life? This is Pragyan put into simple words. The annual international Techno-Management fest of NIT Trichy, Pragyan is completely run by students, with a volunteer work force of more than 700 students. Pragyan is the first student-run organization in the world and the third overall next only to London Olympics and Manchester United to get an ISO 20121:2012 Certification for Sustainable Event Management. Held during the month of February, Pragyan sees thousands of participants every year. And these are just facts.
Commitment to the highest levels of quality in the event is the reason for Pragyan to expand its foothold across the globe. Pragyan presents an opportunity to innovate, for ideas to evolve into reality. Innovation and technology go hand in hand, thus lays the need to know technology, use technology and celebrate technology. With teams from over 60 countries taking part in the contests, Pragyan hosts more than 50 events spanning across 11 genres. These clusters depend whether the event is circuital, non-circuital, managerial, design based, etc. Apart from the prize money, these events provide an excellent platform to learn, compete, show-off and have fun.
Pragyan is not just about events. The Guest Lecture series organized by Pragyan is one of the best and the stage has seen quite a number of managerial genies, tech-wizards, hotshot entrepreneurs, media moguls; each one, a professional in their field.
What good is a tech-fest without the stages seeing a good verbal joust? Thus came ‘Crossfire’, a panel discussion, which aims to provide a global platform for the academia, industry and government to interact with the fraternity. Then there are Workshops, an integral part of Pragyan. Every year, Pragyan teams up with the best technological organizations to come up with challenging and useful workshops, just for the participants. Pragyan also has a high social responsibility quotient and organizes year round activities for the same.
The varied Exhibitions offer a sneak peek at what the world is working on. Along with this, the students of NIT Trichy, under the banner of ‘Sangam’ display models developed by them on various problems. And the fun element of Pragyan, ‘Infotainment’ delivers an exciting mix of knowledge and entertainment through various artists.
Outreach, a Social Responsibility and so on, Pragyan is much more than what meets the eye. Celebrating Technology for 11 years, this edition of Pragyan brings out a way of seeing science differently.
For a full picture, visit www.pragyan.org or Pragyan’s Facebook page: fb.me/pragyan.nitt

pragyan2

8th edition of Deadline24 is coming!

It is time for the 8th edition of Deadline24, an international programming marathon

deadline24

The finals of the 8th edition of Deadline24, an international team programming marathon, will be held on April 9-10, 2016. Teams of three can register up until February 25. On February 28, 2016 they will be competing in the qualifying round. Deadline24 is an international programming marathon, organized continually since 2009 by Future Processing. The finals consist in the rivalry of the teams of three who tackle algorithmic tasks for 24 hours. The teams can sign up until February 25, 2016. Registration is available on the contest

website www.deadline24.pl.

The marathon is composed of two phases. The qualifying round starts on February 28 at 9:00 AM (CET) sharp. For 5 clock hours the teams will be solving tasks and generating responses assessed by the verification server. This stage of the competition is remote.

Then, the best teams of the qualifying round will meet at the 24-hour finals held on 9-10 April, 2016. Marathon’s venues are always closely related to the industrial character of the Silesia Province. In the previous years, the finals took place in the Guido Historic Coal Mine at 320 meters below ground, in the historic “Ludwik” Mine in Zabrze and in the Contemporary Art Gallery ”Elektrownia” in Czeladź.deadline

“The tasks were difficult but… interesting. Same as the venue”. – said one of the last year’s finalists Mikko Sysikaski [Google] from the Finnish team with a Polish name “Drzewo Licznikowe”. Last year’s edition gathered more than 1000 participants from all over the world. The qualifying round attracted contestants from Poland, Czech Republic, Ukraine, Serbia, Latvia, Slovakia, Russia, Germany, Austria, Switzerland, Spain, Croatia, Great Britain, Belarus,

Hungary, Nigeria, Taiwan and India. Among the participants, there were employees of such companies as Google, Ericsson, Facebook, Microsoft, Bank Zachodni WBK, Wirtualna Polska, Unity Group, InsERT, Nokia and Prezi. Deadline24 is organized by Future Processing, a company engaged in developing high quality software for business and industry. They have been ranked among the top 50 fastest growing technology companies in Central Europe, according to the Deloitte’s “Technology Fast 50” ranking.

http://Deadline24 2015 – Recap Video I Future Processing