the end of devOps

The last month I used some of my time to learn and remember some stuff about devOps, linux, git repositories, setting up servers and the use of tools like cron. As I said some of this activities were more to remember knowledge that I mostly had in my networks classes or operative systems; but in the majority this activities were new to me, some of them I never tried them before and I have to say it was fun.

Part 1part 2, and part 3 of my adventure learning some of devOps can be found on those links in another of my blog entries. You’re free to read them, those are short and maybe funny. I will summarize for you what you will found if decide to read the posts:

In part 1 I wrote about how wrong we are people with the concept of devOps, like it’s completely different of what we think, well not that completely but yeah no ones knows exactly what it means or what to do when working on DevOps.

In part 2 I installed a linux distribution with a virtual machine in my laptop along with python and java and some other tools to start working with DevOps, basically was setting up the environment to be able to do something.

In part 3 we started working! This was a difficult task, I had to create cron jobs, and start automating stuff of my repo using my my tiny  and slow window of linux, it was fun though, but I don’t think this is something I would do for living haha.

In general I loved/hated this activities because:

  1. Is something a haven’t done in a while, so doing something different from what I am used to is good, it’s like relax BUT at the same time I got stressed out because of the things I didn’t knew I could do, learning new stuff is always a challenge, but gaining knowledge is the best reward you can ask.
  2. Again I used tools like virtual machines, linux and commands I am not used to, it was very fun watching me trying to use a different OS in a virtual machine (which changed its layout since the last time I used one), but I don’t like to be stressed.

 

Yeah, I recommend this kind of activities very much, as I said in my blog post about unit testing with python, learning new stuff -even if it’s not what you want to do- is an experience you should never let go. Go and learn something new, start a new course, watch documentaries, play a new game, just don’t stay where you are because you are comfortable. Enjoy life and get the most of it in every situation.

Anuncios

Python Unit testing

For this blog entry, we are focusing in unit testing on python. While doing some research it’s kinda similar to JUnit (for unit testing on java) and it’s python (my first programming language) so I hope it be as easy as it sounds.

First I read an article recommended by our professor about small talk and testing on it using a framework to support it. Interesting article, but most useful is the tool Hypthes.is which allow us classmates to make annotations on the document so we could share our thought about the paper.

Screen Shot 2019-04-07 at 13.54.27.png

Also, we could read the paper thanks to Wayback Machine which allows to see all versions of some websites so, while I was on this I use the occasion to look into a website I like to see how it looked years ago. I chose instagram because is my favorite social network and app, I obviously knew that there wasn’t a website since the beginnings but I had the doubt of what they used to show and I found this:

Screen Shot 2019-04-07 at 14.01.59.png

 

It’s nostalgic to see the old version of instagram before Facebook happened. I think Instagram have one of the best app designs (until their last update that I don’t love) but the oldie one is pretty pretty, it would be nice to have a feature like use the old design or something. But well… let’s continue with python.

For this task we had to look into a LinkedIn course about using PyCharm for unit testing on python: Unit Testing and Test Driven Development in Python course. First we defined some test cases

Screen Shot 2019-04-07 at 14.16.27.png

and then we run themScreen Shot 2019-04-07 at 14.08.49.png

At the end all test cases were successful and the tutorial was fun to do. I truly feel I have learned something new and useful because the course was so well explained. I think this kind of activities are the ones we need to do to feel the course is worthing every cent our parents or tutors are spending in our education.

About PyTest: I liked it, I think is very simple but powerful at the same time, like python is very simple to use and implement and I think no one who likes this kind of stuff would have problem understanding it. It has a lot to do with JUnit, but it’s very different at the same time, I just enjoyed it.

I highly recommend to take this course now more than ever. Bye, bye.

 

 

Review Week 10

For this week we did work with the Google Maps API by adding it to our application. The main concern was to add some functionality to the app using the maps, but while working on it we realized we still need to figure it out what exactly will the user see in the app, just their location or what. We already can do that in our app, so we kinda accomplish what we proposed but its not finished yet.

Plan Week 10

For this week the main task is to follow the work with the Google maps API integration. We already inserted it into our app, but we still haven’t connected it yet to the functionality of the app. So for this week two main points:

  • Correctness of the google api integration.
  • Add functionality, we need to do something with the maps and not just showing them (that’s useless).

Intro to DevOps part3

Now, in this entry we’ll see Intro to devOps volume 3 (I love Guardians of the Galaxy movies). This is the third part of the blogs about devOps and how to setup a full environment for deployment, automation, etc. using a linux machine. In this part I’ll talk and try to do the setup for GitHub, ssh and keys.

The first step in this part is to have a GitHub account which I already have (yay), you can review it here. Now I should create a repo for testing this, the teacher said we should use some web content, it is the most common thing nowadays I suppose. So, for this I will use a repo that I used to learn and practice Angular.

I lost some time because by looking at my profile, something I don’t use, my first years in GitHub were basically nothing in terms of contributions compared to now and it’s because of my different jobs, it’s great companies use such useful tools like GitHub.

Okay, now I realized that I should’ve went by the Node way when installing web servers because it’s what I usually do haha, so let’s do that “how to install node in ubuntu and after that we can continue.

Next is setting up my two factor authentication on my GitHub account which I have already did before. And for the SSH keys, I have created them before but I need to create one for my linux machine. Usually this is easy, but oh yisus it’s difficult to do it from a virtual machine! and I don’t use the same commands as for my Mac so ugh…

After that I cloned my GitHub repository and made some changes to see it actually works, made some modifications and yeah, everything perfect.

At last using what I learned in the previous post Intro to DevOps part2, I created a cron file to automate the pull of my GitHub everyday at 18:hrs (don’t ask me why).

All this was tedious but it’s like everything at the first time, I learned a lot or at least remembered some thing from previous classes that now I see how useful they are. I liked this practice, I recommend you to do the same!

Intro to DevOps part2

This is the second part of my blog Intro to DevOps, which I wrote two weeks ago. In this part I’m installing a Linux distribution, installing support for development and at last setting up the first test of Cron.

I’m using a MacBook Pro 2016 and I don’t want to deal with all the complicated stuff to install linux right on hardware so I am using a virtual machine from Oracle, VirtualBox. Last time I installed a Virtual Machine and a Linux distribution was in my Networks class two years ago, so let see if I don’t get in trouble.

First, this is newer version of virtual box that the one I used previously so I’m dealing with “where do I click to install the linux distribution”. Oh, I downloaded Ubuntu Desktop, btw.

I thought I was installing the version with no UI, but it does, so it’s new for me too. It’s taking so long… Ok! it’s done, I have Linux Ubuntu in my Mac. Now, the next step is to setup my programming languages, I think I’m just gonna install Java and Python.

Installing java was so hard, I don’t know if I went for an incorrect path or what, I don’t even know if I actually installed it. Python 3 was much easier, just a few commands and that was it. Now GitHub, it should be easy… and it was :D. Next I have to setup web deployment, for this I’ll go for LAMP, it’s something I have done before. For this I’m following the instructions on How to install LAMP Stack on Ubuntu and it was just fine, long, but not hard.

Now, the last thing to do in this blog is to setup the first test use of Cron on the server. Okay, I thought Cron was something completely different of what it actually was. But by doing the short tutorial I realized this was something I have actually done before, also for my network Class.

 

Okay, that was all. Peace!

Smart Surveillance

This week we watched some videos about different projects that are expected to be implemented in some of the top cities around the world. This projects are intended to make these cities smart cities by adding some technology into their neighborhoods that helps with the correlation between citizens and the city itself.

Although this projects are being developed with the best intentions (I want to believe), some tough decisions need to be made. Most of them are focused on the use of the data generated by the population so, yes, the problems are related to PRIVACY (so scary).

cee2e547-d1ed-4a22-a41e-62642f440399

I personally believe that this kind of projects are in benefit of the greater common and I definitely would agree to the government investing on their development. Yeah, I do care about privacy and all that stuff but as a good citizen I need to know that the only fact of being on the internet means you have abandoned your privacy rights in many senses for useless purposes that only benefits one or two (or five👀) big companies. So, I would like to people to be educated enough to know when and how they should share their info, when to trust when to not.

In these projects in particular that may help in many different ways the cities we all live in together, we should be more open mind and work with the community as a team and make them bigger and better.

The secret life of bugs

Although the title sounds interesting, the original reading from which I am writing this post (The Secret Life of Bugs) was really boring, interesting, but also boring. I mean I get it because it involves a lot of research, but I don’t think there was fully necessary to include all the information in just now document.

I like it includes data collected from surveys and (I wasn’t surprised) it’s hard to see or bad that most people is still doing manual testing instead of automated and as usual the major kind of bugs found were Code Bugs and the least are spec bugs, which is pretty reasonable because if specs aren’t well defined from the beginning, then, well, the project just won’t work.

That’s all what my mind can give for this entry, sorry but my head is just tired. Peace!

Social Cohesion

In my last weekly post I talked about the top cities in the world and why are they the top cities in the world. One of the categories that called my attention was the social cohesion so I went into it to know what this is about and why Helsinki is the top city in this category. Btw, I didn’t know where Helsinki was and it turns out it is the capital of Finland (pretends to be shocked).

So, wikiprogress define social cohesion as a cohesive society that.

  • Works toward the well being of all its members
  • Fights exclusion and marginalisation
  • Creates a sense of belonging
  • Promotes trust
  • Offers its members the opportunity of upward mobility (rising from a lower to a higher social class or status)

A cohesive society is characterized by resilient social relationships, a positive emotional connectedness between its members and the community and a pronounced focus on the common good.

According to the same study I mentioned in my previous post (The top 50 smart cities in the world), Helsinki improved its overall ranking by seven places from last year and nine places from 2015, which was used as the reference year for the index. “Helsinki is a fine city. And it wants to be even finer in the future. This index is another expression of how Helsinki has managed to take leaps forward in a short period of time”, says Mayor Jan Vapaavuori.

It shouldn’t be strange to see a Finland’s city in this top due to all we know about Finland. And what we now? well, at contrary of what we are used to, I have never heard or read bad news from this nordic country. Actually I don’t know much about it, but what I’ve always known is that the citizens in there live happy, they have one of the highest educational levels and poverty is like a myth to them (seriously, a friend told me how the Finnish reacted when the saw poor in Colombia and they just said “I can’t believe this is real”).

Talking about Mexico in this, yes, we love each other but at the same time we talk trash about each other, we are constantly fighting against the government and something that is sadly true in Mexico is that is hard for us accept other people success, we don’t accept that people may be rich while others are poor and certainly we expect government solves our problems while we don’t want to study. Is a circle of never ending bad thoughts and goals.

Ok, I started just happy writing this post about how well a country can be, and now I’m sad thinking of when my country could be at that level. Soon I hope. I love my country and the people who are with me and I really hope I can do something for Mexico, I want to see it grow as my grandparents never did.

Mexico City in top smart cities

This week I decided to do some research of which are the top smart cities in the world and in a website I found the name of Mexico City (WOW). Yeah, of course it wasn’t because it was part of the top but because NY was on it and only bigger city in the continent is Mexico City. Sorry to disappoint you, guys.

But, seriously, would you think that site is a reliable source after reading that? All Mexican who has been in Mexico City knows it is impossible this city belongs to the top 5 of smart cities in the world. I recently visited the biggest Metropoli in our country last December, I was a tourist in a big, big city. I must say that after my visit now I see why the chilangos catalog Guadalajara as provincia. The comparison in sizes is huge.

But why Mexico City can’t be part of this top? Well, according to a research made by the IESE Business School, there are many factors to evaluate and say if a city would be considered in the top cities and the top cities in each factor are the following:

  • Human capital: London.
  • Social Cohesion: Helsinki.
  • Economy: New York.
  • Governance: Bern.
  • Environment: Reykjavik.
  • Mobility: Paris.
  • Urban planning: New York.
  • International Outreach: Paris.
  • Technology: Hong Kong.

As you can see Mexico it is not in the top of any of the factors, nor a Latin American city, which can be related to the biggest problem Latin America is facing: bad governance or corruption. I mean, if the study would’ve been made by a association in Mexico, we may be the top of some category (I’m joking).

So, it is sad not seeing your country as top tier in such important things, but at the same time you know the situation we’re living through and we just don’t expect to be part of this.