Career / Vehicle Operators Across Nigeria by Kingsleyawoke: 3:30pm On Jul 16 |
Join this thread to connect with fellow drivers nationwide. Share experiences, tips, and insights on navigating Nigeria's roads. Keep updated on traffic rules, safety best practices, and industry developments. Build a supportive community to advance your driving career and make a positive impact on transportation in Nigeria. |
Jobs/Vacancies / Vehicle Operators Across Nigeria by Kingsleyawoke: 3:13pm On Jul 16 |
Join this thread to connect with fellow drivers nationwide. Share experiences, tips, and insights on navigating Nigeria's roads. Keep updated on traffic rules, safety best practices, and industry developments. Build a supportive community to advance your driving career and make a positive impact on transportation in Nigeria. Telegram link: https://vehicleOpratorsNG |
Education / Re: National Open University Of Nigeria (NOUN) Students by Kingsleyawoke: 11:50am On May 31 |
. |
Programming / Re: I Just Started My Web Development Company Without Any Experience by Kingsleyawoke: 5:46pm On Jan 22 |
. |
Programming / Re: I Want To Learn Programming. Which Language Should I Start With? by Kingsleyawoke: 8:49am On Jan 15 |
. |
Programming / Re: I Just Started My Web Development Company Without Any Experience by Kingsleyawoke: 3:08pm On Jan 13 |
. |
Programming / Re: I Want To Learn Programming. Which Language Should I Start With? by Kingsleyawoke: 3:04pm On Jan 13 |
MrSuama:
Specs and price? seems I missed this quote |
|
|
|
Education / Re: National Open University Of Nigeria (NOUN) Students by Kingsleyawoke: 6:24pm On Jan 07 |
. |
|
Dating And Meet-up Zone / Re: Singles And Searching Forum...lets Meet. by Kingsleyawoke: 11:07pm On Jan 05 |
Bukola123456: My name is Bukola. I reside in ilorin. I am working. I am 29 years old and a Christian. |
Romance / Re: My First Experience In A Nigerian Club by Kingsleyawoke: 10:44pm On Jan 05 |
. |
Programming / Re: Drop Your Programming Related Issues. (logic Only) by Kingsleyawoke: 4:59pm On Dec 30, 2023 |
Yes I have oh |
Programming / Re: What I Learnt From Building My First App by Kingsleyawoke: 4:43pm On Dec 30, 2023 |
Bravo for this write up... honestly, i got a lot of encouragement here kncokolo: I've copied and pasted most of this from my blog post, so if I've broken the rules somewhere, so be it. I just thought I'd share my experience for anyone who might be interested.
28 days — that’s how long it took me. From the day I stopped following Stanford’s CS193P course, to submission. Granted, I had already envisioned the idea I had for my app prior to that, but 28 days ago was when I first started building. I’ve learnt a lot of things along the way, things that I think you can’t actually learn unless you build something so this post is going to be about those things. Obviously I can’t include everything, as I’m sure there are things that I’ve learnt that I don’t even realise yet but I’ll just try to list the things that stand out to me.
Simple? What does that mean?
When I set out to make this app, studyBreak, I conceived of it as a simple timer. Its functionality is similar to a Pomodoro timer but in building it I discovered that the word simple, as far as programming goes is quite a complex concept. What is simple? Sure enough, the concept for my app seemed simple but all the extra functionality that I wanted to put in it, all the ways and tweaks I could think of that would make my app better, made it anything but simple. It’s a struggle to keep things simple, for me at least. It’s a struggle to curb my ambition and tell myself, that that feature I want isn’t unnecessary, that in fact the app would do better without it. During the past four weeks, I’ve learnt that any app can be as simple or as complicated as you make it. It’s up to you to decide where on that spectrum you want to be and I think one learns with time where one should be on that spectrum. One thing that I can say that I’ve found to be true, is that less is more. Take Apple & Google for example. Much of their success is based on minimalism and simplicity — that’s for a reason, and I became acquainted with that over the past 28 days. I can always add extra features to my app if need be, but making something that is complicated less so, is more difficult.
Object Oriented Programming Takes Getting Used To
Building things so that they are objects that function ‘blindly’ takes some getting used to. I think that stems mostly from getting used to how to think and design in those terms. This hampered the design of my app but as I built I became more used to it and it came more naturally to me. The more object oriented I tried to be in my programming, the better my app functioned and the easier it became it to continue building. This is something that I can’t really describe well but when you start building something you’ll see it for yourself.
Debugging Feels Different to Programming
I’m sure you’ve heard it before that programmers spend most of their time debugging. I’d estimate that during the past four weeks I’ve spent between 30-40% of my time debugging. Debugging isn’t very difficult when you’re working with just one class, but once you start building and app and you have several classes, things change. Most of the bugs I encountered were to do with the logic of my program — I’d made an incorrect assumption somewhere, and I’d have to adjust things accordingly. However, doing that had a ripple effect throughout the program and I’d have to start rethinking the logic of other parts of my program to accommodate the changes I made to fix that initial bug. Again, object oriented programming helps here. The more isolated and self sustaining your classes are, the less this is of a problem.
There’s a major difference in the feel of debugging to building a program. When you’re designing, you start out with an initial problem you’re trying to solve. You have a blank canvas and the ideas flow in. You’re optimistic about how you want to solve that problem and every thing you come up with seems like a good idea. But once you start coding, you realise that they aren't all good ideas, and instead of solving the fundamental problem you set out to solve, you get bogged down solving all these little problems of your own creation. Debugging can also be very draining, especially when you spend hours trying to figure something out without making any progress. It’s tough, but it’s something you just have to live with.
Good planning is the best gift you can give yourself
If you want to save yourself time on debugging, spend more time planning. If you've followed my blog posts, you can see I didn’t spend a lot of time planning. This is partly because I already had a good idea of how I wanted my app to be, but also because I felt like I would be able to plan better if I could visualise the app better, which I would be able to do once I started building. However, everything I failed to plan properly in the planning stage, ended up being built into my app as a problem. Did I do things the wrong way? Maybe. But I do still believe in the value of having a good visualisation of the product to be able to help in improving the product.
Google (and stack overflow) is your friend
I guess this goes without saying, but I feel like I have to say it. 90% of the problems I encountered, Google had the answer to. The only problems that Google seemed to not have the answers to were the extremely new ones; ones related to using beta software.
DON’T USE BETA SOFTWARE!
If you’re an advanced programmer, fine go ahead. If you’re just starting out and you only have one primary machine, don’t upgrade to the betas. I made this mistake and looking back it just wasn’t worth it. Yes I can say that my app functions great on iOS 9, but iOS 9 isn’t out for a few months, so what’s the benefit of that? And the major cost of it was unexpected functionality. From migrating my code from Swift 1.2 to Swift 2.0, to Xcode 7 behaving differently to Xcode 6, I encountered problems and gave myself extra work from day one. Then when I finished my app, I realised I couldn’t even submit it to the app store from Xcode 7, so I had to go back to Xcode 6, which I realised I could no longer use on my system because it is incompatible with El Capitan. To cut a long story short, DON’T USE BETA SOFTWARE, unless you have specifically good reason to do so, and you’re not using it on your primary system.
Pace yourself
I was very ambitious when I started this project and I wanted to blaze through it, which I did. The problem is that after about 3 weeks of working on it for several hours every day, I started to feel a little burnt out. Debugging has a lot to do with that, but I was starting to feel like I didn’t want to code at all. Like I didn’t even want to look at a screen. I picked up a book, an actual paperback novel (The Plague by Albert Camus) and I went outdoors somewhere nice and just read. It refreshed me, but it wasn’t enough. There were days when I felt like I just couldn’t think straight or like every line of code I wrote was trash. You can overdo it. I did, and I know for my next project I’ll take it easier.
Keep Going When You Feel Like Giving Up
This sounds like a contradiction to the previous point, but it isn’t. Breaks are good, and pacing yourself is good, but never give up. Even in the face of a problem that you feel like you can’t overcome, just keep going. What does a computer scientist do? A computer scientist uses computers to solve problems. Let me repeat, solve problems. Whenever you encounter a new problem, treat it as just that — a new problem. Isolate it, identify and quantify it as a distinct problem, then figure it out. Even if that means breaking it down into even smaller problems, that’s what you do, because that’s what it takes to succeed. Maybe it turns out that a particular problem will take too much time to solve, so it becomes something you have to work around, but never quit because of an obstacle you encounter, just keep going.
It’s a learning process
I mentioned in one of my video posts that I’m currently learning Swedish, and that this has helped me in building my app. It’s helped me because when you learn a new language, if you try to understand absolutely everything that is said you’ll fail miserably. You’ll get demoralised and you’ll give up. You just have to accept it as a fact that you won’t understand everything, but if you at least try to pick up on the things you do understand and follow the gist of things, then you can make progress. This applies to programming in the sense that, if you feel lost, sometimes it’s best to just accept it and keep going — things often start to make sense later. Following the CS193P course, there were a lot of things that I didn’t understand while doing it, such as extensions, closures, computed variables & optionals. I ended up making use of all of those things in my app. I encountered problems, and then I realised that those things were created specifically to solve the problems I had. Even now, there’s a ton of things I don’t know and throughout building my app I kept referring to the documentation and to Google. You’re always going to be learning if you’re a programmer, so accept it and get used to it.
There’s a lot more to building apps than just programming
If you’re working with graphic designers, web developers and marketers then that’s great, there are a lot things they can do for you. Even better if you have those skills yourself, but if you don’t, you’ll have to learn them. As well as building my app I also had to design the app icon, make the screenshots for the app store, write a description for the app, create a website and give it a good title. You won’t learn most of these things in many of the free programming courses that you might take online so it’s good to know that you’ll have to deal with them at some point.
And that’s it! This is a long post and even then I’m sure there are things that I’ve left out, but I’ve really tried to cover everything that comes to mind. Building an app turned out to be easier in some ways than I anticipated but also more difficult in many others. All in all, it has been a fulfilling process and as I wait for my app to be reviewed I feel a sense of accomplishment as a programmer that I could only feel having built something of my own from scratch. To all you learners out there, I say this to you: build something, it’s definitely worth it!
For those interested, my blog - http://learnscode.kenechi.org & my daily video posts - https://www.youtube.com/playlist?list=PLZ-jzXxkMmVM-DBxYGa8Yql6xBOCdhTUX. |
Programming / Re: I Just Started My Web Development Company Without Any Experience by Kingsleyawoke: 4:26pm On Dec 30, 2023 |
smartTech22: I recently started my first web development company in Abuja. The name of the company is EasyWeb - https://easyweb.com.ng/. I couldn't find any jobs, but I saw a post about cold calling on Reddit, and I tried it; it really worked. I've gotten some high paying clients and reviews.
You can join if you want to. I already have some people I'm working with. If you're good in frontend design, just basic HTML, CSS and JS you can easily join us. I'll like to join your team, since I already have strong experience in HTML, native CSS and vanilla JS. Here is my whatsapp number: 0904 023 3296 or you can drop yours |
|
Programming / Re: How Much Do You Make With Your Computer? by Kingsleyawoke: 2:36pm On Sep 05, 2023 |
Go straight to what you think; don't mind what other do. |
Dating And Meet-up Zone / Re: Join Whatsapp Group For Singles by Kingsleyawoke: 11:31pm On Sep 01, 2023 |
. |
|
|
Programming / Re: I Want To Learn Programming. Which Language Should I Start With? by Kingsleyawoke: 11:01am On Aug 30, 2023 |
. |
Programming / Re: I Want To Learn Programming. Which Language Should I Start With? by Kingsleyawoke: 6:38pm On Aug 22, 2023 |
. |
Software/Programmer Market / Re: Java/javascript Developer Wanted by Kingsleyawoke: 7:23pm On Aug 14, 2023 |
Do you still want person; I'm available, I stay in Lagos. |
Webmasters / Re: In Need Of A Good Web Programmer For A Website Work by Kingsleyawoke: 8:10pm On Aug 13, 2023 |
Anybody that got this job, I would like to collaborate on the front-end. Here is my contact +2349166533787 |
Programming / Re: WEB/APP Development by Kingsleyawoke: 7:21pm On Aug 10, 2023 |
. |
Programming / Re: WEB/APP Development by Kingsleyawoke: 10:26pm On Jul 06, 2023 |
I know I'm late but still add me +2349166533787 |
Programming / Re: I Want To Learn Programming. Which Language Should I Start With? by Kingsleyawoke: 8:31am On Jun 10, 2023 |
Frank688915: Baba he can only learn the basis for that time frame Depending on his zeal. Perhaps he'll be busy gathering his documents so, he won't have the time that's required to focus. |
Programming / Re: I Want To Learn Programming. Which Language Should I Start With? by Kingsleyawoke: 7:27pm On May 31, 2023 |
Programming laptop for sale, HP 8Ram, 1TB Storage, everything is working fine with a follow come charger. This is my Whatsapp +2349040233296, I stay in Apapa, Lagos. |
Programming / Re: Please What Is The Best Way To Withdraw Money From Paypal? by Kingsleyawoke: 7:26pm On May 31, 2023 |
Programming laptop for sale, HP 8GB Ram, 1TB Storage, everything is working fine with a follow come charger. This is my Whatsapp +2349040233296, I stay in Apapa, Lagos. |
Programming / Re: I Want To Learn Programming. Which Language Should I Start With? by Kingsleyawoke: 5:40pm On May 31, 2023 |
teamb: I'm travelling to canada soon on work permit, what programing aspect can I go into within 60days I don't think there's any programming language you can master at that period of time; if you can just get the concept then go there and start learning. 1 Like |