Obinwanne Hill

Interview with Obinwanne Hill on RestiveJS a JQuery plugin to help create responsive web sites without having to deal with Media Query.

He also told how he got into web programming in Nigeria in the '90s.

Download: mp3 (23 Mb) 24:28 mins

Transcript

00:02 Gabor Szabo
Hello there, and welcome to CMOS, the Code Maven Open Source podcast and interview series, where we are talking about interesting open source projects, with interesting people. I'm your host, Gabor Szabo, and with me is, and I really hope I pronounce your name correctly and please correct me afterwards, Obinwanne Hill, right? From RestiveJS. How are you?

00:28 Obinwanne Hill
Yes, that's correct, Obinwanne Hill. You almost got it, so that's fine.

00:34 Gabor Szabo
I will practice, hopefully I'll get it improved, by next time we're talking.

00:40 Obinwanne Hill
Okay, no problem.

00:41 Gabor Szabo
Okay, so please tell me a little bit about yourself

00:47 Obinwanne Hill
Okay, well I am a web designer/developer. Actually I started out web design before I went into development, with PHP. JavaScript actually came much later. I started JavaScript about back in 2010, and I started Restive back in 2013, and we've just been doing web design, web development, so this is for a diverse set of clients, but what we've also been trying to do is to develop techniques, in web design and development.

Basically just things, I'm trying to develop like different ways of doing things online, doing things on the web, so that's where the idea for RestiveJS, which was an open source project, it's actually a designer-friendly toolkit for building responsive websites, which is based on jQuery. So that's where the idea for that came up. So we'll be using that to build websites and we've been happy that thousands of developers around the world and some pretty impressive companies are also using the plugin on their website. So it's been pretty interesting, especially since now we're trying to re-gig the plugin and also launch a couple of new projects later in the year, next year.

So it's been pretty busy and you know, it's been fun, the web is really changing, it's getting a lot more complicated but we're doing our best to try and simplify things.

02:48 Gabor Szabo
You're running a little bit ahead now, of us. I wanted to talk a little bit more about your background and how did you get into programming and ...?

03:05 Obinwanne Hill
Okay, well actually, if I could go all the way back to my teenage years, I guess I always been fascinated with technology, especially when the internet hit. I guess my first interaction was probably in the mid-90s, back when I started college. So the internet was pretty much just breaking there. And growing up in Nigeria, these services weren't exactly very accessible. I mean, you could only get them in big offices, so it was pretty difficult to get access but I was lucky that the place where I did, through an internship was with one of my Dad's friends at the time, who had a telecommunications consultancy company, so they had an internet connection.

I was really inspired by how the web works and the promise that I guess it could have, the promise that we see today, the web is everywhere. I was inspired to learn how everything worked, behind the scenes, because you see web pages and you're, How did they build this? How did all this come together? So I was really interested to know the nuts and bolts of what web pages were made of, so that's what actually sparked my interest in learning HTML. So I got a couple of books, just started reading, reading up on tags, a few years later getting into CSS, and then a few years after that, getting into PHP.

So it's just been an iterative process of learning technologies that you need to build websites that could do stuff, not just putting up a web page, but functional websites. Like e-commerce websites, both the front-end and the back. So it's just been a journey of learning and trying to understand all the technologies that make up a functional website.

05:49 Gabor Szabo
So you started with an internship but it wasn't that yet? What kind of things...?

05:57 Obinwanne Hill
No, it wasn't web yet. It was more like, okay this is the internet, and the internet, there's so many aspects to it. There's the network aspect, there's tons of stuff that make up the internet. At the time, I was looking more at the network aspect. You know, Cisco was pretty hot as a company at that time and everybody was trying to get Cisco certifications at the time, so I was looking into that as well. But then I discovered that the networking wasn't really my thing, I wanted to be more front-facing. So that's where the whole thing with web pages came into it, and that's where HTML came into it. So really you could get books, on virtually any aspect you wanted. If you wanted to go the Cisco route, you could get a Cisco cert book, if you wanted TCP/IP, you could get that, if you wanted HTML, so there were pretty good resources available at the time. Mostly books, so it just depended on you figuring out what aspect you wanted to be part of.

07:21 Gabor Szabo
And then did you get a job in web programming or this part..?

07:26 Obinwanne Hill
Actually, what I did was I started a company in 2004, and that was just a way of, Okay, I'm learning these skills, let me put these skills to use and provide services for small businesses in the area. So that's actually how that came about, it was me, trying to use the skills I'd learned to provide services for small businesses. So that's, I was learning at the same time and also providing the service at the same time.

08:05 Gabor Szabo
So you were building websites, I guess?

08:09 Obinwanne Hill
Yes, I was building websites, small business websites. I was also, websites weren't always the thing at the time. Sometimes some clients, all they wanted was something as simple as email. You know, We don't need a website, we just want professional email address, @ourcompany.com kind of thing. So I just said okay, fine, instead of focussing only on websites, I'll also provide web-hosting as well. So yeah, the company was pretty much a web-hosting/websites company.

08:47 Gabor Szabo
Okay, and so did that grow, do you have employees, or are you self-employed?

08:54 Obinwanne Hill
Yeah, we've had a couple of employees but that business didn't actually do, it didn't do great, basically because of scalability. I mean, there wasn't, it was all bootstrapped, there wasn't any external funding or anything to accelerate the business. So basically everything we were making from revenue, and anyone will tell you that that's not the best way to start a company. I mean, even now I'm still a lot focussed on the bootstrap nature of starting a business. Even though a lot of people are, first thing they do, they got the idea, then they run out and go and start to try to get venture capital.

I tried to spend a little bit of time perfecting the product. Maybe a little too much time. I'm trying to change my attitude towards that now, I'm trying to come earlier and say, Hey, we're working on this, do you think it's interesting? And trying to see whether there's an opportunity for getting some capital, but I think it's important to focus on the product and try to get some initial customers. Once you do that, there's some validation that what you're doing actually matters, and is a service, or is a product, that people actually want. So once you get those first few customers, I think that should be the point where you should accelerate and say, Let's try to get capital.

So that business didn't actually scale so well. It's still active but I'm in the process of re-integrating it into the business I'm doing now, because a lot of the things we're doing with that are complementary to Restive. So I'm trying to just re-integrate that into Restive and take it from there.

11:14 Gabor Szabo
So, let's go forward to Restive. You started it a couple of years ago and why did you start it? What kind of problems have you encountered that you wanted to solve?

11:25 Obinwanne Hill
Actually the reason that I started Restive was, in 2012 I was trying, responsive web design was a growing methodology. Mobile devices were really growing, really fast. And websites, you know, weren't coping. Websites were having a hard time, or users were having a hard time using websites, which were not customized for mobile devices. So around 2011, 2012, I was trying to learn responsive web design and how everything worked and I read a couple of articles and I was trying to get around all the methodologies, like media queries and all that, and I just ended up becoming really frustrated at the workflow, because there was way too much testing, for one, testing that was required to build a responsive website was ridiculous. I mean, there is this Tweet from Luke Wroblewski, if I've got his name right, that showed all these devices that you have to test your website on, and there were probably 20 or 30, so that frustrated me and I was trying to find an easier way to build a website, a responsive website. And that's really where the idea for RestiveJS came about.

I just want to say before I forget, this website is going to have to adapt to different devices. So I gave you a way to keep track of the devices that this website is going to be on. So if this website is being accessed by a phone, I want to be able to know that instantly. If it's a tablet, I want to be able to know that instantly. If it's in portrait orientation, I want to be able to know that instantly. Some of these notifications, or the status of the websites, while they were on these devices, was not commonplace. I mean, it was, you had to use media queries or nothing, and I just, I was just a bit frustrated with that. So I just thought I'd build a program, just to help me personally, build a better website, and I did that. And I decided, Hey, if I'm having these problems, some other developers might also be frustrated as well. So I just put the code up on GitHub and reached out to a couple of blogs, SpeckyBoy was one of them, to get started writing a couple of articles, and it just went off from there.

So I got a couple of responses from different people who wanted to build websites and said, I read about this and was thinking if you could help out with the websites. So that came and that brought another idea. I was like, Hey, if people are having a problem with their responsive website, or with the website that they want to make responsive, I could provide services to help them out. So I just said, Okay, why not just start a company to do that, so that's pretty much how the idea for Restive came about.

It's still bootstrapped, there's no outside capital, it's pretty much just me and a remote team, every now and then, doing things, but we're looking at launching a couple of interesting products this year and very early next year. So hopefully, once we do that, we'll see if we could get some other outside capital involved, if possible, and try to grow the company from there.

16:11 Gabor Szabo
So there is the RestiveJS, which is the open source, you said plugin? Is it a plugin to jQuery? Or..?

16:22 Obinwanne Hill
Yeah, it's actually, right now it's a jQuery plugin but we've completely changed, maybe we can talk about that in this time later, but we've rebuilt it from scratch, and we've actually built a second toolkit, which is targeted more at people who want to get more out of CSS. It's a bit difficult to explain, it's always better when you're able to demo, Okay, this is what this toolkit is and this is what it's about.

But basically, we're trying to help web designers and developers build better websites, in less time, and with less stress. Because today, building a website is still incredibly complicated. Even for experienced web designers and experienced web developers, it's still really complicated to build a website that is responsive, and has good performance characteristics. It's really a tough thing to do, so we want to simplify that process for designers, and also for developers as well.

So these are the two main groups we're trying to target with the plugin. It's also going to be a free and open source plugin, so anyone can access it for free and use it. But there's a couple of things we're trying to build around the plugins and around some of the techniques that we've developed thus far, that are also commercial, but open source is important to me, because I personally have used tons of open source technology. I mean, MySQL, PHP, jQuery, there's tons of open source tech out there, that really has been beneficial and inspirational to me. So I feel it's important to also contribute as well. If you're building something that helps you and makes your life easier, I think it's only right to have that technology to be accessible to every developer, anywhere they might be. So I think that just makes the ecosystem much better and stronger.

19:01 Gabor Szabo
So do I understand it, that this second plugin is not available on GitHub yet, right?

19:08 Obinwanne Hill
No, it's not available on GitHub yet but it will be very early next month. It's actually built, in fact it's actually running on the RestiveJS website right now, so we're kind of testing it, dogfooding it whether it's ready, we're really happy with it, I'm really impressed with what we've been able to accomplish with it. But this time, we want to...the last time, with RestiveJS, we didn't do so well on the content side of things, like the documentation wasn't fantastic, you know, there were tons of tutorials that I had plans to do that I didn't get around to doing, so this time I want to make good this time.

I want to make sure that the documentation is really good, that we have tutorials. We have 200+ tutorials planned for both toolkits combined, so just enough content for developers to really pore over and access and get how to use the toolkit. So we're just trying to learn from the mistakes we made the last time, that's why it's taking this long. But really, it's built, it's working, we just want to take our time to really test it and just to make sure it works really well, because nobody likes, even if the software is open source, if there's tons of bugs in it. I want to be able to use it, and know that someone has tested this, and it's working, and it's doing what was intended.

21:03 Gabor Szabo
So just for closing the interview, how can people get started or where can people go to get started with RestiveJS and how can they maybe help you, if there's any way they can help you?

21:19 Obinwanne Hill
Okay, well, we actually just redesigned the website. It's the same domain we've used before, I mean you can get access to it at RestiveJS.com and there's a link to the GitHub repo right on the home page, so they can start playing with that. Because when the next toolkit comes out, it's going to be much easier to use, if you're familiar with RestiveJS and why it exists. So that's the website they can get access to the toolkit. They can also go to Restive.io, which is the website for the rest of the company and there's some more information on some of the products we're working on. So we definitely appreciate the feedback, if there are any ideas for how we can improve or what else developers might have some issues with, we'd definitely like to hear what problems they're having today and see if we could fix that, with the toolkits we already have, or maybe something new. But we're working on a couple of things, that I think designers and developers would find really useful.

23:00 Gabor Szabo
Well, thank you very much. Do you have any things that we haven't mentioned earlier that you would like to mention? Or shout-outs to some people?

23:11 Obinwanne Hill
Well, I'd just like to thank the web community, any one working on any open source products or projects, we don't really recognize these people, you know. They're behind funny advertise, and probably in a place like GitHub that not everybody visits, I think it's only fair to, I'm inspired by a lot of projects that I see everyday and people are just helping out, not asking for anything, and just trying every day, just trying to put something out there to help someone else. So I'm really appreciative, too.

And I also personally, I'm trying to do this to help all other developers, just like I've been helped, so it's just a pay-it-forward kind of thing. So shout-out to the open source community and everyone working on a project in the open source tech.

24:20 Gabor Szabo
Well thank you very much, and thank you for coming on to the interview.

24:25 Obinwanne Hill
Okay, thank you. Appreciate it.

24:27 Gabor Szabo
Okay, bye bye.

24:28 Obinwanne Hill
Bye.