Whattup Greet!


Playing around android again. I tried creating an Android App that will basically send out a message “Whattup” from a chosen contact.

Screenshot_2014-12-19-05-55-45

Pretty much basic – but the key here is that I learned how to do it.

I’m excited as much as your are, hopefully this is something that I can use in the future. :)

Long term for this?: I’m planning to create my own messaging service. Basic stuff, just like Yo, but instead of sending “Yo” – I’ll be sending “Whatup Chief!”

Ridiculous… yet..

The Automation


It was rainy Monday evening, sitting down the chair doing the usual surfing the net. All of a sudden, a colleague of mine pinged me via MOC, asking me to check the issue they are having. I quickly check what is going on via the log file. It was;t pretty since I need a stable connection just to tail the entire log file – I can’t even open much less grep through the exceptions. Yet as luck would strike, the ctrl + g then ? then keyword “Exception” return an line.

Exception: Column <> is missing

I quickly realise that this was an error due to the inconsistency of data and configuration of our UAT environment across the board. It’s something inevitable and cannot be seen if you don’t look over the scheme of things. I knew how to fix it, I advised that what needs to be done – and problem is solved.

Now I didn’t stop thinking about it, I know that it was solved, but it seems that this kind of issue will keep on creeping us as long as we don’t put a rotational sync of UAT environments – which is not an option since we don’t want to refresh the database every week as it may entail replication issues or UAT data loss. It’s basically a hard sell if it needs to.

Now if you look at it from a different perspective, there will be questions. Questions of, “if this is not possible, why can’t this be done?” Can’t we just work around it? What if the developer has the right tools before this issue happens? What if we can prevent it?”. As I think through all this, 1 solution came to mind.

#automation

I clearly see what lacked and know what happened, there is something that can be done and that is to automate the data control management entry on all environments – automate to promote it, not to execute it.

What if: I create a script that by the end of a release, this tool can be used by the developer to promote the DCMs to different test environments? The dev would need to align to different owners of those test environments that the promoted entries is mandatory as it will create the production objects that was recently released?

A python script, gets all DCM > run the DCM links > promote DCM > use a different user (dev?) > generate emails that will be send out to the leads?

That way, we prevent the sync, we aligned to the leads what needs to be done and we prepared whats needed.

Thoughts?

Python Script – Learning the hard way!


I recently enrolled in a Python Online Course – although I’ve been using it for more than a year now, It was always good to go back to the roots of it and refresh the fundamental knowledge I have.

The online course I’m talking about is this: learnpythonthehardway.org.

It’s a very straight forward beginners guide to creating scripts using the platform. The author was great in explaining every detail and every output. He encourages learners to not copy and paste, but to actually code what he wrote on the site.

ex35_py_and_Python_Script_–_Learning_the_hard_way____AREYES

So whats in it for me? 

We’ll I’ve always been fascinated with automation using scripting languages. I find it “attractive” and “fulfilling” creating different scripts to automate a complex process – and Python is, if not the best, is one of the best there is. It’s so simple and yet so powerful. Extremely easy to learn – allowing developers to be creative with it! Some might not say the same thing, but I’m very excited just thinking about the things I can do with it.

I used it so far:

  1. Automated our side by side comparison generation.
  2. Automate my local application deployment.
  3. Web scrapping and putting them on a database (cannot give details on this one though).
  4. Simple Registration process using DJango

If you’re going to start it though, make sure you either have Notepad++ (if you’re on windows) or TextWrangler/Sublime Text (in Mac). Open up your terminals (Mac comes with python 2 – as of this writing). Something like this:

learnpythehardway_—_sh_—_81×23_and_ex35_py_and_Edit_Post_‹_AREYES_—_WordPress

Some Tips:

  1. Start with a TextEditor – not a IDE that has intellisense in it. There is no fun with that. If you need documentation, use the pydocs!
  2. Pydocs <object> – Extremely Helpful!
  3. Python Editor Plugin for Sublime Text.
  4. Get Projects! Don’t just practice – do real stuff and contribute!

Join me in improving this comparison tool! https://github.com/alvinjayreyes/svnDiffToHtml

 

Happy Coding!

Menu App Ads Idea


What if you have a large screen, full of HD animations and pictures of your food menus where users can just use their own gesture to go back and fort on your menu? What if instead of having that large tarpaulin to display your menu, you have an interactive display to showcase them?

interactive_menu_using_leap_motion_-_Google_SearchI present, RemuAds – Restaurant Menu Ads. Still in the works but I’d like to share where Im at with it so far.

Features:

  • The application will have a customisable user interface where the administrator can configure their menu and put an HD quality or a 360 image (360 magic app) to showcase their menu.
  • 360 images and animation can be controlled by the user by using their hand gestures.
  • A QR code and a downloadable menu – with the same quality menu so that users can download the menu and put it on their mobile phones. They will be able to rate them accordingly tying up a more sophisticated rating system of food products.
  • Controls will be defaulted to 6 gestures of leap motions, this will allow the user use not just a single finger gesture, but can be any swipes available.
  • Optional – Device will be solar powered

Divulging to much information might not be a good idea, but you get the point.

Resto Menu App


Before I even join the udemy Android Tutorial class, I already created a tablet app that runs on android – that we sold back then to a restaurant owner here in Manila. I created it for my former start up company (Peppermint Software Labs) as part of our product line up.

The Application Design. Basically we need a tablet app where the customers can just order via the tablet, the tablet then will send the orders through the server that will display the orders via a screen on the back. The orders should be queued accordingly and should have the necessary information for the crew at the back to do the orders.

The Technologies. I used CI (CodeIgniter) for the backend application and Android Platform for the mobile application. We had an assumption to run this only in Android so no need to port this in iOS.

ci

The Mobile Application version 1. It started as something like this, I used JQuery Mobile and PhoneGap Web Browser to launch the application – but as it turns out, it’s a bit slow. JQuery loads a lot of graphics to it’s components with the addition of bootstrap components. It killed the intuitively that I sold to our customer.  So I literally got back to square one and just settle first using the Android Native Platform.3The Mobile Application version 2.  Same UI concept but I used  Android Components. It wasn’t that straight forward and it almost took me 2 weeks to re-create everything from scratch and match it to what we presented to the customer (a tiring week that was).

restoappThe initial screen will ask for an admin account first. This will allow the technical staff to configure each tablet and point it to the correct server where the app will throw the orders data for the backend staff.

The Order Screen! Simple and elegant but quiet web-centric (influenced by my web development/ design perhaps?). Panels on the left are Categories and order list – these are floating panels that can be swiped out if not needed so that the user will have more room to appreciate the HD images of the menu itself.

4The Server  Application Itself. Backend App. Once the customer gives the order, boom – it goes to the backend, automatically saves it on the database and the app displays it (Ajax Polling).

2

1

It’s one of those not very sophisticated design for an application, but it does the job. It does what the owner wants. I even put delivery process, take outs, additional orders. One improvement though is table merging and that’s next on my list.

Overall, I had a great time doing this, even under the pressure of delivery. One of my goals is to become a full stack developer and this experience definitely propel me to understand the concepts behind developing an Android Application. It was really a great learning experience for me to begin with and I’m looking forward to doing more of these in the future.

 

Follow

Get every new post delivered to your Inbox.

Join 1,268 other followers