GeistHaus
log in · sign up

Gabriel Magaña Gonzalez | Technologist

Part of feedburner.com

Software architect, team leader, and engineer.

stories
Android phone not recognized on Windows 10
Uncategorized
Show full content

I’m putting this here, primarily so I don’t forget how to do it the next time. Hopefully other people can use this as well.

Sometimes, when I connect my phone to my Windows computer via a USB cable, the phone’s directories and files just do not show up on my Explorer. I narrowed this problem down to the drivers that Windows is using. One driver is the bad one that does not work, and the other works reliably. This is what I do when this problem happens:

1) Go to the device manager and look for something under “Other devices” or “Portable devices”. It may be the model number of the cell phone, or simply be called “MTP device”:

 

 

 

 

 

2) Right click on it, and select “Update Driver”

3) Select “Browse my computer for drivers”

4) Select “Let me pick from a list of available drivers on my computer”

5) Choose “MTP USB Device”. If there are multiple drivers, try this several times and choose a different one each time until one works. When this works, the Explorer will open a window with the files on your phone.

 

The post Android phone not recognized on Windows 10 first appeared on Gabriel Magaña Gonzalez | Technologist.
https://gabrielmagana.com/?p=229689
Extensions
Basic human psychological needs (or, how to help people be happy)
Personalhappinesspsychologyself determination theory
Show full content

Want to raise happy children? Want to put a smile on uncle Harry, who is clearly frustrated with his life and is an asshole to everyone around him? When dealing with people, keep in mind these fundamental needs we all have. All the people I’ve encountered who seem depressed and frustrated lack one or more of these.

Autonomy – We all need to have control over their life and a choice in what we do. Make sure the person does not feel forced or trapped in a situation.

Competence – Make sure the person is able to solve their problems. If the problem is too complex, simplify it. If they still lack the skills to solve the problem, then give them the autonomy (see above) to use a tool/professional/whatever to solve the problem.

Relatedness – People need to have a sense of belonging with others and feel connected.

How you give these to people depends entirely on the situation: If you are a minority dealing with a racist person, then start with relatedness: Focus on what’s in common, and explore other areas of commonality before you deal with more explosive topics. This is why talking about the weather is a safe (though boring and stereotypical) choice for a first coversation with a total stranger.

In any case, if you want to make someone feel better about you and life in general, make sure these three needs are met.

Any aspect of psychology is a huge topic to explore. Check out these other pages for more detail:

Self Determination Theory – Must read. This expands much more into what I wrote above.

Tony Robbins’ List – Tony is a great, uplifting person, and he states six basic human needs. They overlap with these above, so I think reading this page will give you a fuller view.

Motivating Students – The list, adapted to students.

The post Basic human psychological needs (or, how to help people be happy) first appeared on Gabriel Magaña Gonzalez | Technologist.
https://gabrielmagana.com/?p=229630
Extensions
The “Now” page
Personal
Show full content

I added a Now Page to my site. The Now page is a pretty cool concept, driven by Derek Sivers (by the way, if you do not follow Derek, you should).  The Now page is a snapshot in time. It should have no history and it should inform your web visitors about where you are in life, what’s been happening and what you are thinking, what you are doing, what your goals are, etc. This of it as if you have not seen a dear old friend in a year, and what would you tell him or her to catch up on your life.

I think it’s an awesome concept. We live in a very fragmented information flow. I share lots of things on social networks that are funny to me, I sometimes share pictures I take of family or places I visit.

But it’s all a tiny fragment of what’s going on in my life.

To really know what’s going on in my mind and life, we’d have to sit down face to face and have a long conversation. Of course I can hardly do that with anyone, especially the people who really matter to me. We all live far away from each other.

That’s where the Now Page comes into play. The idea is that you update it frequently, and people can come visit that page at any time and see what’s going on with your life.

It’s simple, but enables a deep connection unlike any social network or instant messenger could.

The post The “Now” page first appeared on Gabriel Magaña Gonzalez | Technologist.
https://gabrielmagana.com/?p=510
Extensions
Book: Liminal Thinking
Books
Show full content

One of the things I most like to do is to get to know myself. I want to consciously know what I think (which is surprisingly difficult for me), why I think what I think, and knowing my weaknesses and blind spots.

The whole point of this is to improve myself. I know the term self-improvement has a very negative stigma lately, especially from very vocal folks, but I cannot jump on that bandwagon because I really do think I can identify my weaknesses and improve upon them.

The problem is identifying those weaknesses.

The book Liminal Thinking had me hooked from beginning to end. So much so that I read the whole thing from beginning to end in one sitting.

All through my adult life, I’ve sought to be a better person in all aspects: As a friend, as a father, as a husband, as a son, as a boss, as a provider, as a mentor, as a business strategist, as a student, as a life strategist, and as a human being in general.  The problem is that it’s extremely difficult to see yourself in the mirror for what you really, truly are. As easy as it is to see other people for who they are, I find it near impossible to do the same for myself.

Liminal Thinking has given me several major new strategies to get to know myself, to analyze my life, and to detach from myself to see my situation from different angles, which then gives me a much truer picture of my own life.

I love to read, and through reading I’ve learned much in my life.  This is one of those few books that completely changed my outlook about a major area of my life (getting to know myself, and diagnosing and addressing my shortcomings).

If you are in a similar situation to mine, where you are looking to make a change in yourself for the better, then I give this book my highest recommendation.

The post Book: Liminal Thinking first appeared on Gabriel Magaña Gonzalez | Technologist.
https://gabrielmagana.com/?p=229617
Extensions
Clean Architecture (Java)
JavaSystem ArchitectureTechnologyClean Architecture
Show full content

I’ve been using Clean Architecture for a long time quite successfully. I previously posted about Clean Architecture, where I linked to a sample project in C#. I wanted to also see what a project in Java would look like, so I went ahead and implemented it as well have a look at the github repo for the Java version.

The post Clean Architecture (Java) first appeared on Gabriel Magaña Gonzalez | Technologist.
https://gabrielmagana.com/?p=505
Extensions
Clean Architecture
c#System ArchitectureClean Architecture

In the past few days, I soared straight through Robert Martin‘s book, Clean Architecture. After seeing a receipe for such an elegant system architecture, I spent a couple days converting an existing project to the architecture. It was difficult to implement Clean Architecture for the first time, and to do so while converting an existing […]

The post Clean Architecture first appeared on Gabriel Magaña Gonzalez | Technologist.
Show full content

In the past few days, I soared straight through Robert Martin‘s book, Clean Architecture. After seeing a receipe for such an elegant system architecture, I spent a couple days converting an existing project to the architecture.

It was difficult to implement Clean Architecture for the first time, and to do so while converting an existing project to it!

In the end, I was successful, and I was extremely happy I did the conversion on that project. It;s the right size of project, and it was a good time to conver it, since I only had a lot of code written (but not a ton!) and the project was not in production yet.

I can confirm that project will have a lot less of a hard time when I make changes to it.

To prevent future pain, I also wrote a boilerplate C# Clean Architecture solution from scratch and put it up on a Github repo. Check it out at https://github.com/gmagana/clean-architecture-example-csharp .

I think the sample solution will be useful for a person new to Clean Architecture. I certainly wish I’d had that sample code at hand when learning about the architecture!

In the future, I’ll be using that sample solution to start new projects. Hopefully it will be useful to other folks as well!

The post Clean Architecture first appeared on Gabriel Magaña Gonzalez | Technologist.
http://gabrielmagana.com/?p=379
Extensions
On being overwhelmed
Uncategorized

How to not feel overwhelmed.

The post On being overwhelmed first appeared on Gabriel Magaña Gonzalez | Technologist.
Show full content

Note: This an extremely useful suggestion taken from Tim Ferris’ book, Tools of Titans. I highly recommend everyone read Tim’s book.

Feeling overwhelmed sucks. You feel bombarded from every direction, and all you want to do is run away from it all. We’ve all been there.

Tim Ferris suggests asking yourself these two questions when you’re overwhelmed:

  1. In the midst of overwhelm, is life not showing you exactly what you should subtract?
  2. Are you having a breakdown or a breakthrough?

As Marcus Aurelius and Ryan Holiday would say: “The obstacle is the way”, in other words, the obstacle itself gives you an insight to the solution. You just have to look.

Thank you Tim, for giving me the answer :-).

I highly recommend you read this book. The excerpt above is from the chapter titled: How to Say “No” When it Matters Most.

The post On being overwhelmed first appeared on Gabriel Magaña Gonzalez | Technologist.
http://gabrielmagana.com/?p=369
Extensions
Travelling: TSA Pre vs Global Entry vs Sentri vs Nexus – Which is right trusted traveler service for me?
Travel

TSA Pre vs Global Entry vs Sentri vs Nexus - Which is right trusted traveler service for me?

The post Travelling: TSA Pre vs Global Entry vs Sentri vs Nexus – Which is right trusted traveler service for me? first appeared on Gabriel Magaña Gonzalez | Technologist.
Show full content

When I was trying to choose which is the right expedited border processing service for me, I could not find any information. Not even the people who processed my TSA Pre application knew what the different programs were. I recently received this flyer which explained it all. Since I did not find such a clear explanation anywhere I post it here, maybe it will help someone in the same boat as I:

Front:

Back:

The post Travelling: TSA Pre vs Global Entry vs Sentri vs Nexus – Which is right trusted traveler service for me? first appeared on Gabriel Magaña Gonzalez | Technologist.
http://gabrielmagana.com/?p=364
Extensions
Installing FTP server (vsFTPd) on an Amazon EC2 Ubuntu 14.04 host
Technology

How to install FTP server vsFTPd on Ubuntu on Amazon EC2 and also fixes an authentication bug

The post Installing FTP server (vsFTPd) on an Amazon EC2 Ubuntu 14.04 host first appeared on Gabriel Magaña Gonzalez | Technologist.
Show full content
Intro

When I tried to do this seemingly simple task, I could not find any one guide on the web which told me everything I needed to do, so I write it myself :-) I also ran into a bug in Ubuntu that at least shows up on Amazon: Authentication fails every time even though you are 100% sure you have the right credentials. This is tested on Ubuntu 14.04 on an Amazon EC2 instance, but it will probably work on other versions as well.

So here is what you need to do:

Step 1: Install vsFTPd
sudo apt-get update
sudo apt-get install vsftpd
Step 2: Configure vsFTPd
sudo vi /etc/vsftpd.conf

Uncomment the following lines:

write_enable=YES
local_umask=022
Step 3: Configure chroot

Enabling chroot keeps FTP users confined to their hone directory tree. This usually a recommended security practice. To do this, edit the vsftd config file again:

sudo vi /etc/vsftpd.conf

Uncomment the following line:

chroot_local_user=YES

and add this line at the end of the file:

allow_writeable_chroot=YES
Step 4: Enable Passive Mode

Usually you want to enable passive mode on an FTP server. You set aside a range of ports to use for passive FTP connections. In the example below, I use port 40000 to 40100. To enabl;e passive mode, edit the vsftpd.conf config file again:

sudo vi /etc/vsftpd.conf

Append the following lines:

pasv_enable=YES
pasv_min_port=40000
pasv_max_port=40100
port_enable=YES
Passive address resolve

Passive connections require using a routable IP address from the remote host.

Do you have a fixed IP address on your server?  If so configure by appending these lines:

pasv_addr_resolve=NO
pasv_address=<SERVER_IP_ADDRESS>

If you do not have a fixed IP address and would like to user a hostname instead, append these lines:

pasv_addr_resolve=YES
pasv_address=<SERVER_FQDN>

 

SERVER_FQDN is the fully qualified hostname of the server that remote clients can find, such as ftp.mydomain.com

Step 5: Ubuntu vsFTPd authentication bug workaround

I ran into a bug where I could not authenticate into FTP even though I was sure I was using the correct credentials. I do not know ifd this is a general bug in Ubuntu, or only affects Ubuntu on Amazon. This is how to fix the problem if you are affected as well:

sudo apt-get remove vsftpd
sudo rm /etc/pam.d/vsftpd
sudo apt-get install vsftpd

This fixed the problem for me, and it was not a problem to run these steps after configuring vsFTPd.

Step 6: Open ports in the AWS EC2 control panel

You need the following ports open in the AWS security group: TCP 20 to 21

If you configured passive mode, then you need to open up that range of ports as well, in the example above I used ports 40000 to 40100

Step 7: Restart the vsFTPd service

Finally, you should have everything you need in order to connect via FTP to your server:

sudo service vsftpd restart
The post Installing FTP server (vsFTPd) on an Amazon EC2 Ubuntu 14.04 host first appeared on Gabriel Magaña Gonzalez | Technologist.
http://gabrielmagana.com/?p=248
Extensions
Best in Show
Personal

So here I am, back in my native Morelia, in my grandfather’s magnificent house in the historic center of the city. I grew up in this house, surrounded by what I now realize were many factors that added up to an awesome, enviable childhood. I went up to the roof to take a panorama picture […]

The post Best in Show first appeared on Gabriel Magaña Gonzalez | Technologist.
Show full content

So here I am, back in my native Morelia, in my grandfather’s magnificent house in the historic center of the city. I grew up in this house, surrounded by what I now realize were many factors that added up to an awesome, enviable childhood.

I went up to the roof to take a panorama picture of the view outside. I have spent many wonderful solitary moments in this rooftop just taking in the beauty of the city and thinking about the historical events that happened right here. Morelia played a very important part in the Mexican revolution: It witnessed the birth of the insurgency by the main characters in the revolution, as well as being the birthplace of revolutionary leader José Maria Morelos, hence the name change to “Morelia” in his honor.

Morelia, Mexico

Morelia, Mexico

Anyway, I was in the rooftop taking my pictures when I saw an old artifact just sitting in the rooftop leaning against a wall between an old bathtub and a rusted out dustpan: It was a tarnished “Best in Show” award plate made out of copper that one of our dogs had won on what feels like a lifetime ago.

Best in Show

Best in Show

To appreciate the significance of this award one must know something about our family: We were, for a couple decades or so, absolutely dog -crazy. There are pet owners, pet rescuers, and dog fans in this world, but we were absolutely dog-crazy. We would travel to the USA to purchase dogs we had scoped out and reserved months before they were born. We actually have framed pictures of dogs throughout the house interspersed with pictures of people.

We remember dogs as fondly as we remember close family members. You might hear a conversation around the house about our beloved old maid aunt Carlotta, who is rumored to have really still been a virgin when she died a couple years ago at age 95. You might also hear the same stories about dogs, such as Tiny’s (a Collie) extreme disdain of people wearing sandals. He would lunge at and bite without warning at anyone wearing sandals for some unknown reason. The psychological underpinnings of such sandal-hating tendencies have been the subject of much discussion in our family through the decades, and will certainly never be resolved. There are also stories about how Arthur, a huge Great Dane my uncle Jorge had. Which pure blood Great Dane is not huge? Anyway, Arthur was very playful, too much for his size. There was no leash to be purchased on either side of the border that could withstand Arthur’s lunge. There was no TV cable that could stand the excited swag of his tail either. If the TV signal was suddenly lost, Arthur’s tail was the prime suspect. We would go up on the roof and devise yet another way to keep the TV cable out of the deadly whip’s way.

Tiny

Tiny, the sandal-hating Collie

There are also stories about another of Uncle Jorge’s dogs: Sam, a Siberian Husky. Sam was just crazy and over eager. Once he jumped to a neighbor’s property and killed all his chickens. We’re talking a lot of chickens. There is also the time he fell from the roof on top of a drunken guy walking by.

Also my beloved late uncle Alberto is fondly remembered in the family as were his most notable dogs: A pair of beautiful Afghan Hounds who required daily hair maintenance. We have a framed picture of those dogs too.

As for my mother and I, our most winning dogs were a pair of Kerry Blue Terriers, although we had several other breeds through the years as well. Yes, we have several framed pictures of those dogs as well.

And so on. One could make a list of my aunts and uncles and come up with several dogs each owned and describe the salient aspects of each (each human and each dog, that is!), and tell a bunch of stories about them all.

For a family with so many pure-breed dogs, dogs and dog shows were a way of life. Breed Standards were required reading done as the next purchase was planned and in preparation for dog shows. Maybe every other weekend on average we went to a dog show, no matter if attendance required eight or ten hours of driving each way. Nearly every time we came back with an award of some sort. In my mother’s house I even had my own display of ribbons and prizes won for handling show dogs as a child. If we had not moved to the USA thirty or so years ago, I would have most certainly maintained the family hobby. A great many things changed when we immigrated to the United States…
So back to the Best in Show award plate on the roof. By now it goes without saying that finding this maximum accolade of dog ownership abandoned on the roof was surprising. For all our dog show madness, I believe this was the only time we won a Best in Show. I believe it was won by Jack, our Kerry Blue Terrier.

The plate itself is deservedly large. It is a custom hand-hammered copper plate engraved with the heads of three dogs in the center, and the inscription of the event on the outside circular area. The fact that it’s made out of copper is of significance because it’s a natural resource found near here. The plate is very tarnished, though. It has obviously sat there forgotten for a long time. I am not sure why it’s not hanging in a prominent place inside the house.

I debated for some time whether or not to bring it in and clean it up. With the right liquids and an hour’s of scrubbing I know I can make the plate go back to its shining glory, making it new again, shimmering with pride as it is – after all – a Best in Show award won by a very dog-devoted family.

But the plate is also the past. The long-gone past. The only dog enthusiast in the family now is my cousin Omar but he breeds dogs and does not really show them.

The real choice to me was whether or not to try to make the past alive again by polishing the plate and giving it a more dignified location. But that past is dead, no matter how awesome it was. This house has enough memories of the past as it is. As I sit in the formal dining room in the pre-dawn hours writing this, I can hear the many sounds of the past, when this house was full of children running around, my aunts and uncles planning the next night out, my grandparents laughing and joking and having a drink with one of the ever-present visitors. The inside of this old proud house is filled with pictures. Those pictures are, in a way, attempts to cling to the past. So is this Best in Show award.

I decided to leave the plate where it was on the roof. I decided to say goodbye to the past, beautiful as it was, as if it were an old friend.

I know I will be back sometime in the future. I will go on the roof top again, and if I see that old award there, I just might sit next to it with a bottle of Tequila, just two old friends remembering a past that both love immensely, knowing that the past must be allowed to remain in the past.

The post Best in Show first appeared on Gabriel Magaña Gonzalez | Technologist.
http://gabrielmagana.com/?p=81
Extensions