Sunday, 28 October 2012

API - Application Programming Interface

The API is a term I have seen and heard a million times throughout my travels into the world of computer science and I always had a vague idea of its definition. I understood it mostly to be a kind of go-between for the user and a specific type of program.

 Turns out I wasn't too far from the truth, an article I was recently reading summarised what the API is really well so I thought I'd share it with you.

 Essentially the API is a set of pre-defined rules that programmers have to follow if they want their code to work on a certain application. For instance if you were on the web and you wanted to view a PDF file, you would have to have a 'plugin' that allows you to read PDFs within that browser. The programmer constructing that plugin however would of had to adhere to the rules set by that browser's API to create that functioning plugin.

 APIs are literally everywhere, if you're using Windows right now you may notice how, in all the menus and boxes that come up the style of these interfaces are pretty much the same and that is due to the fact that Windows itself has a general API and again programmers wanting to create programs within windows will have to adhere to the pre-defined rules of that API, making all programs developed under that API have a similar feel.





 So the next time you are considering writing code make sure you are aware of the API for the particular system you are trying to manipulate.

Wednesday, 24 October 2012

To Catch A Shooting Star

As I am starting to get back into computing after my break with it to learn about and solidfy personal discipline I came across an article that clarified something that used to puzzle me so much when 'playing around' with coding.

 I always struggled with the fact that once a process produced its outcome, say 5+5, the answer would be produced and the program would either close or go onto its next process seemingly destroying the outcome of the previous process. Well it turns out this is to do with the fact that computers only do what they are told and if you told them to add '5+5', that's exactly what they are going to do. You didn't ask them to save that outcome so they obviously are not going to do that for you. What you have to do however is 'Catch a Shooting Star'. The shooting Star in this instance being the outcome from the process that is going to blink up on your screen then just disappear. To save this shooting star you have to hold on to it, hold on to it by storing it as a Variable. 

 Hopefully this produced one of those 'ohhhhhh yeah, of course' moments to you as it did me'. Knowing that if I want anything to continue existing in computing it has to be stored makes a huge difference to the way I view programming and I am feeling far more confident about not being confused about why my 'programs' would just blink up and then disappear. One thing that still puzzles me however is where does that '25' (from the '5+5' example) go, is it just erased?, was it ever stored?. 









 Anyway I hope this provides a little bit more clarity to understanding programming as it did for me.


Tuesday, 23 October 2012

Facebook Group for all self-teachers

There has been talk for quite a while discussing the need for a centralized group where everyone who wants to get involved in the process of teaching yourself computer science can meet and discuss progress, tips and tricks etc..

 So I took the liberty of setting up a quick Facebook group that serves that very function.




 Join up, post articles, suggestions, wisdom.

 Share the wealth.


o O o
o o O
OOO

Monday, 22 October 2012

How To Become a Hacker

Amazing article posted on the 420chan thread; the article discusses the mindset behind being a hacker and gives you a good insight into why most people bothered with computing in the first place. This has definitely re-kindled the fires of learning and has given me another positive reason to get heavily involved in the computing community.

Hopefully this will do the same for you.



As far as personal progress has been going I have started to create a diet and fitness regime that creates optimal conditions for the brain to function effectively. I am writing up the best tips and tricks that I have learned recently and will be posting them in here soon enough.

 On a final note there has been a lot of talk regarding an online meeting place where we can also go and share info and progress etc.. In essence a hacking circle. I will be creating a Facebook group and posting the link on here and the 420 thread so if you are interested in joining up and sharing your experience watch this space.
 (Just Posted a link in the latest article, in case you missed it: https://www.facebook.com/groups/360250364063011/)


Monday, 8 October 2012

Getting back on track

I appreciate a lot of readers who have visited this site will have been poorly disappointed with the quality and consistency of posts thus far, there is no real excuse for my lack of posting or personal progress bar not being disciplined. The initial realization I came to about this life project or spiritual quest was that I am obviously going to fail when I have terrible discipline and have never worked a real day of my life at improving my discipline. My one hope is that I do have a good work ethic once I can sit myself down to work. So needing a plan I had to evaluate what was my biggest problem or biggest source of procrastination problems was, the conclusion I quickly came to was that the overall problem is that I have too much free time in proportion to strength of will not to waste that free time. This realization coincided with me obtaining a second job.

Having got myself two jobs and now working 7days a week I have cut off my potential procrastination time by a huge amount, making the limited free time that I actually have in my day feel far more valuable. So far I have been working 7days a week for about a month and in that time, on the train to work and such I have read three relatively large 300+ page plus books on self-discipline. All of which I would highly recommend to read if you have similar problems to me. I would also recommend you read them in the order I did.






 The first book willpower gives you factual evidence as to the function of human willpower. A vastly entertaining book and incredibly useful as a guide to life. It discusses the role of blood sugar on every function of the human mind and how important it is for a person wanting to master themselves to be in complete control of their intake and the quality of the substances they ingest. Essentially it reaffirms that looking after yourself is so seriously important to your minds health.
 The second book Getting Things Done is referenced highly in Willpower and is a great immediate follow on from willpower, by no means is this book entertaining, it is quite dry and rightly so it is literally a hands on guide on how to get your life in order and keep it in order. It gives you brilliant models to handle any problems you may come  across throughout the day whilst allowing you simultaneously manage your daily to do lists that you will have synced up to your lifes purpose. Sounds weird, really isnt; another 5* self discipline book.
 The final book 7habits essentially elaborates on the two books and gives you real life applications for them as well as bringing your awareness to the responsibilities you have, being a conscious pro-active person to the communities immediately around you.

 I am now currently planning to read two books that discuss proper diet for establishing the mind. I will do small book reviews on these texts if they are relevant.

 The important thing now to note is that I am feeling confident that in the near future I will be on top of myself enough as a person to tackle the initial tasks I set myself. After having read a post today I am going to try and help establish a study group that will try to emulate this :http://www.scotthyoung.com/blog/. The start date for this project will be January 1 2013. Assuming the planet still exists and whatnot.