Friday, 22 April 2016

Software development 101 Tips and guidelines (Part II: For Advance)

I know it is hard for someone without experience to come to a good case scenario on programming but it actually does relate to real life situations here but let's explore a view possibility and hopefully you will find a better story on what was listed.

---------------------------------------------------------------------------------------------------------------

1. Extreme Programming: Simply it is like pair programming, where one is the coder and one tells the other what to program. It is much better than hacks and the quality of the work actually improves overtime. 

One of my over exaggerated examples is: a solo coder working with a network of programming experts, factoring out on the amount of knowledge that you know about a particular system. 

This includes random bugs finding where occurrences is non logical and requires an intuition of a non-technical expert to resolve the problem, url of a HTTP connection becomes a HTTPS without the references of such connection ever could be established from a simple REST server; or in different case scenario, a sudden speed up of Android emulator thanks to a quick automated updated which it didn't do so in the beginning after so many tries. 

I know my ones are a special kind of extreme programming. It does suggest sometimes this works and makes my life better and work quicker and at other times it doesn't work and make me can't work out a simple test examination scenario that was used in a job interview.

Let's jump out of this box and think of a relation as a Turing test where it does helps you and destroys you as well. 

Know this wisely.

2. API reading: This is invented also as a good guy in disguised. I seen poorly written API and what I found doing is how to find out on using them. It makes me think that I am actually pasting code every time that there is a solution. 

If you know what it means, then I would ask why don't they make a API for every solution that there is? 

This asks you should to learn how to test functionality of a particular method, generally good coder use a different set of methods than the ones that commonly used and because from API reading, it actually has methods that does the same thing in a different way.

3. Quick full references: I tried one time using a Selenium tutorial in jumping out a lot of words to reference a limited part of coding. Don't type the code until you realise what it does to the command prompt. 

What I did was jumping back and forth until I worked out what the whole program does without a single input in place. If you made the wrong move and setup the server wrong, it won't behave correctly if you try to re-code it into another way. 

This is a one way street, not bidirectional. 

I managed to setup using just one server running for selenium (I think it was called Complex Cube or something) rather than using two servers running on the same computer (which it sounds strange). 

Just don't believe on what it says until you understand all the technology running behind it. 

You never know what fools you until you know what it is.

----------------------------------------------------------------------------------------------------------------

These are just better explanations on the strange things that happens with programming. 

I think it is best describe as something like "semi-logical meanings" of "perfect sequence of coherent coding" brings to what it really means in reality. 

So now you know of what "Happy coding!!" we hear so much actually is. 

Tuesday, 19 April 2016

How to build the free Weebly website (Part II)

I have figured out some important things in creating the website and it is relating to the usage of images. Apparently Weebly does have limited amount of default images and to find quality ones having alot of people using Weebly seems overly used and not original anymore.

So the post did say try using different images from other sources and the best one I created was using Canva.com. I used alot of icons from there forth. I also explains why I have to charge a little when using someone else's designed images for it's own originality.

So today is my first store on a this website store(* Diccosoft), providing service of using Weebly to produce professional websites similar to what was worded with a few product packages at very budget wise service (ranging from $10 - $25) of a fully developed simple website tailored to suit the client.




I expect one job would take at least three hours to do and be right on track without the need of too much content or wording. The client has the right to pre-design his/hers own content and images and I can add them up to the website.







The service is for those who do not know much about website development but still wanting someone to take care of a professional website, from when it is built to when it is online at a low, low price no more than $100 a year to maintain. 







What I provide is Maintenance services and let the client decides the rest on how should the website be running on. There is on time website Production Deliveries of 14 days and I also provide extra for Custom Services includes on how to run the show using Weebly's website.

I have attached a free blog in how-to-do a DIY of Weebly's website and for those who are keen already, you might have already seen a free version of the Sales and Marketing blog about knowing the preliminaries App discussion to put your product on the market. 

Those who want to know more about the services can contact me from the website.

Happy reading !!

Monday, 18 April 2016

How to build the free Weebly website (Part I)

This blogging post is a DIY for those who would like to know how to create a professional and yet simple website for their needs. May it be a blog, a product, or anything that you need it is to build a website without having to get a developer, designer, marketing and sales to do the job. 

Free and professional. 





Basically you will be the person who would run the show in self tailoring the website to promoting and gain awareness of what you are trying to tell to the community, as we all are sharer's. 

Well, let get started to go to weebly.com and get yourself to register with a free account. If you have a facebook account, you might save some trouble in entering details such as username and password.

Then it will lead you to this main screen here:




Weebly has a friendly user interface that allows in drag-and-drop's, very easy to use and it is like using a MS Office basically with all the professional templates at you fingers.

So let's choose one that you like. Also make up your urlname.weebly.com. Don't worry if you choose the one that not so, because it can still change from the menu.

Ok, now let's have a brief explanation of what the menu bar does.

Click on the Build Menubar. It shows: 


These items can actually be drag-n-drop to the main page onto the right provided that there is a blue box that shows the places that can be drag-n-drop.

So what does it means? All the basics can be added such as:


Title: Title heading
Text: Information you like to write
Images: A particular picture
Gallery: List of pictures
Slideshow: Moving static pictures
Map: Show the location from a Google Map application
Contact Form: Allow the user to be contacted by their own email addressed defaulted
Newsletter Form: Subscription email to be sented to your address
Button: Link the button to a URL
Embed Code: Add in your own HTML / CSS code to give you a feel. If you do not know how to code things and you like to try it out, you can go to - w3schools.com . 

Structure - For visual

Divider: Visually puts a line between two object horizontally   
Spacer: Puts some space between text


Media - Attach different kind of files

HD Videos: Upload HD videos Not available in basic package
Audios: Not available in basic package
Document: MS Word files
YouTube, Flash and File can be attached into the website.

Commerce

Product: E-commerce shopping cart functionality not available 
GoogleAdSense: Can add in an Ad box from Google if you like to earn some by clicks

More - More functionalities

Block Quote - Add in text between quotes
Social Icon - Have Facebook, Twitter, Instagram and others with your own links
Survey - A built in survey form that is sent to your own email address
Feed Reader - Add in other news into your website

View more - Add in different apps to your website such as marketing, sales promotion, etc (an expert approach)

Now we know what this means, let's look at the menutabbar below:



From the BUILD tab, we can select the pages that has been added onto the website.

 

So if I click on the HOME text, it will lead me to editing the HOME page. 

My other pages include ABOUT, YOUR FREE BLOG page and TEST.

This means I can do editing on almost all the pages depending the what type of pages it is with the Basics side menu.

PAGE can add in additional pages that is indexed on the top of the menubar. They are separated with: Standard, Blog, Store and External page. In essence, we might be interested in a Standard page that has certain layout, a Blog page in you website or external page reference to another website.

THEME can change the theme of the website (a selection range), change to certain fonts( please read more about styling like MS Office) and change background (can be setted up with different page and visualisation on the top right corner setted on saved to per page, all pages, etc)

STORE we are not dealing with the e-commerce side of things in this blog

SETTINGS 



There is a lot to say about what can be done in adjusting the settings. 

SEO requires certain knowledge relating to search engines query to make your site more successful. Try researching this topic.

You can add in editors, change your current website URL, add members and groups, add Apps into your website and manage Blogs from your Blog pages.

If you need more help, you can go to Weebly's help center

This link is How to build the free Weebly website (Part 2).




Ok now, I will show you a demo on this professional website (Click link)










Saturday, 16 April 2016

Best practices for software development 101 (Part I: For Basic)

As a developer I always wanted tips in going ahead and create a product for the client. So what is the necessary skill set to actually do all these technical application?

As easy as it says, for beginners it is actually pretty hard to do things on the top of our heads but there are a few things that most developers should know what to do:
  • Try Googling on relevant pages and bookmarking the relevant pages related to the topic that you are working on - refer them as much as possible as sort like a list of steps on what to do.
  • Try stitching the code and modify parts that is needed. Again code working for the sample script should work for your real life project. Stitching the parts needed.
  • Look for the API of a particular framework. Some API are hard to read and reality is parts of the framework is under construction and yet not tested and released for developers. Understand parts of project where they uses this API for a better feel of the framework.
  • Consult with related parties ASAP or using StackOverflow if there is problems relating to a particular problem. Nothing should stop your progress in making a development work.
  • Develop in small incremental steps so the whole application does work on. An analogy is where 0.99 effort of the exponential vs 1.01 effort on the exponential differs greatly.
  • We must know that many times our research topic is old. Most of the topic leads from three to four years old so technology could have changed since then. We are not the leading part in R&D so make sure people start posting their own findings up if it is a related thread that everybody is asking to contribute back to the source.
  • Nothing is perfect. These days we should know what is correct and follow the lead without the need of blindly Googling. 
  • People these days asks for founders for their company because they believe they are in the lead edge of expertise. Get a mentor to do things on a different scale.
  • Go with online courses to equip with the essential skills that you needed. Courses from Udacity, CodeSchool and others proves valuable into new learning areas with technology.
  • Keep on developing new products of a particular project. Make challenges to change the standard way of programming until you learn how development changes from finish to start again - waterfall lifecycle or now says it is rapid prototyping.
  • Know Agile and Scrum well versed, every development company uses it.
  • Don't expect correct answers is actually the correct solution to the problem. It will take time to people to learn from them and know what is right and wrong. 
  • Read a lot and start learning. A better answer is probably from expert developers who with many project experiences. 
  • Good communications is required to work well; reading, writing and listening.
There is actually more to it but I know it is hard work. 

Just keep trying :)


OpenCV color blob detection script on Android Studio emulator

This blog is actually for those who would like to test out a running script from an Android Studio of a OpenCV color-blob-detection script for Androids.

This was one of my research topic for last week in doing Augment Reality app from researching using Google search engine and make something work.

Those who is interested in doing so can actually start do some reading in using OpenCV.

Don't worry about installing as it says as it is just introduction news to get you up and going. It is wise to do it the manual way in downloading this open_cv_android_sdk file from this page here.

So you don't need to install the Eclipse as Android Studio is now the main dev tool kit. What you also need is Java SDK so make sure you have enough 2 Gig space for both of it (at least).

To make things working (after an hour of installation) read this how to make the demo in the meantime so you understand what to do and how to get things running.

Modify the code as it says what it does, don't worry about importing the src code about opencv sdk libraries, as you can import binaries files into the Android emulator by drag the apk file to the window.

The rest is just setting to make the camera and the script working in place. 

Hint: to make things fast you can actually downgrade the emulator type like Nexus S and use a lower Android version such as Lollipop.

Please view the screenshots.




NB: What it shows is a moving object which is brightly colored on the screen and you can click to show what kind of color it is. It then able to recognise the color blob even if it is moving. 

Feel free to test this out!! 

Udacity Free Android App course from Google

I have followed Udacity's course on creating an Android App. This is free and secondly it teaches different aspects on how to build an Android app from scratch that can give in a list of weather called "Sunshine". 

It follows optimization, using REST, database queries of SQL-Lite, UI design, using Android Activity and how to use Android Studio. This is fairly new to me and the creation of a similar App seems open and accomplishable. It is a 102 course provided you do know a bit on Java and know how to do their projects. 

Answering the quizzes further extends the knowledge of how to produce Apps on Android. Although the link might be a little outdated but surely it provides a lot of insights on App building in general and concepts of how to keep the processes as long as possible and battery life and how to use the radio efficiently to send data.

There is actually a place to hand in projects to actually pass this course. A lot of information to know and is good place to go to if you don't know anything on how to produce an Android App.


 

Wednesday, 6 April 2016

Not for the 'Faint of Heart'

I have come to a certain point that many conclusions needs another person to communicate to certify. 

I still remember a couple days ago I got an test on programming that I have to hand in by the end of this week to pass (or fail, I would actually cherished on the things that I learn in this experience for this particular job application). 

There has been a lot of things stated on the Test.pdf file and I read this a couple of times so I can understand the whole requirements. I looked at the criteria's which is second mission to a home run and started running to first base.

I actually trying to get the whole picture to work and I didn't realise I was making mistakes while I was on this road. 

It was like a road between psychological and technical meltdown while I was continuously trying to do an installation that doesn't work on a Windows machine of a wrong library for 8 hours. I had come to a point of machine breakdown (not having enough memory) and mental breakdown (working on a mis-understanding without realising OTHER choices that can be made). 

So the story is like the pictures down below.


 &

(** WT is a C++ Web toolkit built for Linux machines or MSVS which just makes life hard)

So basically I was stuck on doing the wrong thing. 

If I did know writing emailing solves the problem, might as well write to the right person who does solves all the Test mysteries, I certainly do so.

It was my first intuition as I thought I wasn't doing the right thing so the email ended like "I might not be the right person for the position (for the reasons of above)" and knowing life might be too short-ended on the pursue back to IT career, the response from Brad (the person who made the test) actually re-enlightened me with a few cues. 

"If it wasn't answers that shows the road to the next base, I might have stopped without understanding the insights."

It was good experience for me to understand on how wrong I can be on what we think and feel vs what can be the reality.

And this is not for the 'Faint of Heart'.




Sunday, 3 April 2016

Working around in Datacamp 2016

Datacamp is for being a data scientist. 

There seems to be plenty of information in Datacamp on how to be an experience one, not to let the least. 

I would like to be part of the Kaggle competition so this is how it lead me to Datacamp, doing all these tutorials and small coding challenges which I am coping well in my progress. 

This is my progress for today!

It is very interesting. 

I have gone past data computations courses to do Random Forests, vectors transitions, organized data frames and matrices, graph plotting and many more.  

There is information using R as this programming language is used a lot for statistical measures and machine learning. 

To learn this programming language requires usage on it's extensive libraries and that is endless lengths of time to research and study.
I have earn four badges so far!

Two-fifths in completing on Shaping up with Angular.js

This is the latest progress on Angular.js which I hope to finish this course by the end of the week. 
Code School home page

What I learn so far on examples is using modular, directives, expressions, javascript on tabs selection. CodeSchool has the learning materials and online compiler with help tips to complete each parts of the project.

Part of the course is to practice to code
A lot of hands on coding which is well worth the effort.