All posts by Santex

When two emerging trends combine! 3D printing + fidget spinners!

Read about what two Santex guys built when they put their minds together.

How did you come up with the idea to build a fidget spinner together?

Ale Cragnolini: I brought one of my 3D printers to the office to print some parts for a friend’s foundation. All the people in the office asked about the printer’s capabilities and what all it could do, including the idea of the spinners.

Manuel Varela: When I saw that Ale had brought the printer to the office, we talked quite a bit about how it worked and the things he could make with it. I made the comment that it would be cool to print some spinners, and from then on kept pressuring him to try it until finally he agreed to print the structure for one. With the structure he made with the 3D printer, I was then able to add the ball bearings and features to make into an actual spinner.

How long did it take?

AC: The 3D printing process took about 30 minutes. The model was already done and it was downloaded under CC license.

MV: My part of the assembly took about 5 hours, I suppose. Taking out and washing all the ball bearings was the most complicated part. There are some specific tools you need to use to do it, along with hot water, cleaning detergent, and solvents.

Have you built similar devices before?

AC: All the time! I love 3D printing.

MV: No, I’m not really a crafty person. In fact, this is the first spinner I used! I just thought it would be a cool idea to try it.

Do you think you will make more in the future?

AC: I’m always looking for fun new things to print. I hope the next big hit toy has more success than the spinners.

MV: Probably not. I was really curious to see how it could be built, and I enjoyed the process! But I wouldn’t want to have to clean those ball bearings again hahaha.

The Power of Meditation

Gassan Quintar tells us about meditation and how it affects his life

How did you start to take an interest in meditation? How long have you been practicing?

Initially, I was interested in yoga, but I had never made the effort to start. Although it was not on my radar, the word ‘meditation’ appeared on an email invitation from our coworking offices, which said something like “Sessions are intended for all people who wish to take first steps toward meditation.” I thought this was interesting, though not enough.

A friend recommended both the class and the instructor to me, and convinced me to try it by saying wonderful things about this practice. In the end, I decided to go for it.

The email invitation asked the people interested in joining the class to write the reason why they were interested. My motivation was to get into this practice, to learn more about it..

I only needed the first class to know that meditating was exactly what I was looking for, and that through it I was going to gain multiple benefits. Since that time, four months have passed and I still practice it every week.

People often don’t understand what meditation is. Some might think that it’s sitting in a quiet space and falling asleep. What is meditation for you?

People often associate the word “meditation” with thinking or reflecting deeply on a certain topic. For example: “I recommend that you meditate on the topics we were talking about,” etc. In fact, it is much deeper than just thinking. It’s concentration.

From the point of view of my current practice, it is to focus your attention on the breathing in a conscious way. Through various breathing techniques, you train your mind to reach complete concentration. As you do this, other distracting thoughts get removed from the mind.

What is needed to meditate?

It requires several things –  from a yoga mat to a good teacher – to guide you in practice. But the main thing is the willingness to want and believe in what meditation offers. You shouldn’t want to do it  just because it’s “trendy” without understanding the main concept behind the practice.

Some time ago, my teacher, gave us a guide so we could try practicing at home. It consists of 3 steps:

  1. Motivation: Think about why you are meditating. That includes ourselves as individuals and our environment.
  2. The technique of meditation.
  3. Acknowledgment: Being thankful for what allows us to be present, to be part of the experience, and for all that we achieve.

This is a guide not only applies to meditation, but to life itself.

How has meditation benefitted other aspects of your life?

There are multiple benefits. They impact every aspect of our lives – not just ourselves as meditators, but also the people around us.

Meditation develops several virtues, such as the ability to concentrate, patience, discipline, compassion, forgiveness, and love among others.

What tips would you give to someone who has tried meditation but never felt like they have achieved a state of true meditation?

Being ‘in a state of meditation’ comes in different forms that we know how to identify with the help of a good instructor. It’s worth mentioning that we should not go into meditation practice in a state of anxiety, but that we should go with a mindset of perseverance and discipline for the training so that we may develop our minds and the skills we need. It is daily practice and a great instructor that will help you achieve the proper ‘state.’

 

Internet of Things: Challenges

By Sebastian Pereira, Information Systems & Processes at Santex

The Internet of Things, or IoT, is the inter-networking of physical devices, vehicles, buildings and other items embedded with electronics, software, sensors, actuators, and network connectivity which enable these objects to collect and exchange data.

Wikipedia states that the first discussion around “a thing” that was interconnected was a Coke machine that would determine how many drinks were available.

IoT use cases include several applications that range from connected homes, consumer electronics, industries, retail, logistics, government, automobiles, among other areas.

But if it’s been around for so many years, perhaps with different names but with the same discussions in the background, why we are not surrounded by all these things already? Jayson DeMers in his Forbes article states that part of the problem is too much competition with not enough collaboration –  something that discourages and delays the revolution. It is also encouraging bigger companies such as Google, Amazon and Apple, and taking a step into the problem, that they might drive that collaboration with their own applications and infrastructure.

This  competition and little collaboration can be seen as symptoms of a much bigger problem that pose a series of challenges that everybody will have to solve and agree upon for the revolution to come. We are talking about a potential market of billions of dollars for services and applications that range from apparent trivial things to more complex and with higher impacts on societies and economies.

Following are the top 3 challenges I think we have on the horizon with IoT:

  • Security. This is mainly based on the fact that IoT implies more and more devices will be connected through networks, and therefore there will be more opportunities for hackers to exploit. The one thing we learned over the years is that no one is secure, and basically more interconnected devices means more problems – at least more problems to be solved.

To serve as a terrifying example – one of many – take a look at this article, where hackers stopped a journalist’s car in the middle of a highway to prove their point: they can control a car remotely, mentioning this scary scenario: “Imagine last year if instead of cutting the transmission on the highway, we’d turned the wheel 180 degrees,” says Chris Valasek. I can imagine. But he spells it out anyway. “You wouldn’t be on the phone with us. You’d be dead.”

  • Connectivity. If we go back to the definition stated at the beginning of this article, IoT implies that a lot of devices are interconnected, and aside from the security challenge, this means there will be more efficient ways to have all of these devices talk to each other. The (now) classic way of connecting devices as a centralized paradigm for authorization and connection of different nodes within a network may be heading to a decentralized model, such as Fog Computing. With this,  data, computing, storage, and applications are distributed in the most logical, efficient way between the data source and the cloud. There are other solutions where the decentralization is higher, but certainly each option is tied to different security challenges.
  • Making sense of the data. Does Big Data sounds big enough? Imagine something even bigger than. IoT will pose the challenge of cleaning, processing and interpreting vast amounts of data produced by sensors. Gartner estimates that there will be 25 billion connected things in use by 2020.  Internet networking specialist Cisco ISBG’s forecast is of 50 billion connected devices. To have an example of this from the airlines industry, at last year’s Paris Air Show, Bombardier showcased its C Series jetliner that carries Pratt & Whitney’s Geared Turbo Fan (GTF) engine, which is fitted with 5,000 sensors that generate up to 10 GB of data per second.

So basically, applying analytics to IoT has the same general approach on a different scale: how data is collected and how it is interpreted/how can be used. This Forbes article states that applying Machine Learning to analyze the data will be a more efficient option. Given that the current manufacturers of sensors and IoT applications are not experts on analyzing and getting good quality information that can be actionable, new services start to appear on the horizon. One example is Machine Learning As a Service, where buyers can quickly get the insights they need without making huge investments in technologies that are not core to their business.

Of course there are many other challenges with IoT and many problems to solve, but that’s what makes this so interesting to talk about it and work on. Other challenges that can be mentioned are:

  • Power
  • Sensors
  • Standards
  • User Experience and User Interface
  • Waste Disposal
  • Data Storage
  • Laws and Regulations

It certainly states a huge opportunity for business, whether for good or bad purposes.

Sources:

Programmers to Runners: Meet the Santex Guys that Enjoy this Passtime

At Santex, we have several teammates that enjoy running and participating in races and marathons. Martin Navarro, Nelson Secchi, Fede Schaefer, Manu Varela, Matias Donemberg, Edu Nieto, and Fran Mantaras share with us their experience as runners and what motivates them.

Why did you start running in races?

Martin Navarro.: Growing up, I witnessed my dad run in and win several races, both as a member of the armed forces and a civilian. At first, it seemed really boring to me, but once I got older I started paying closer attention and realized the need to improve my physical health, so I started training. Although I wasn’t originally planning on running in races, over time I saw myself getting stronger and healthier, so I decided to give it a try. I signed up for my first 10k, organized by LAN (LATAM) in 2013, and my times were terrible! But with that first experience I realized I could keep getting better and train harder, and I started to understand why my dad was so enthusiastic about it. He’s older now and because of his health he isn’t able to run anymore, but he still cheers me on at my races and helps me train. My times still aren’t the best, but they’re better from where I started!

Nelson Secchi: I started running last year, 2016. There was a 10k race that a couple of friends from the gym were going to participate in and I decided to join them. Best decision ever! 

I continue running because it gives me something I need, an ever-growing physical challenge.


Federico Schaefer:
At first I started running on my own with the simple idea of doing some sort of exercise outdoors while listening to music, since I’m not a big fan of gyms. When I noticed that I could see myself getting better day by day, I decided to start training with a group of runners in Parque Sarmiento in Cordoba. As a few months went by, I could see that I was in condition to run in a race together with the group.

Manuel Varela: I started running because of a bet I had with a friend. We wanted to see who could run a 10k the fastest, and so we started training. After running my first official race, I realized how much I liked it and so I kept going.

Matias Donemberg: The first race I ran was in 2015 because the idea of running 10 kilometers seems absolutely crazy to me, so I wanted to see what it was all about. Afterward, I found out that there was a gym where on Wednesdays they would go out and run as a group in the park, so I signed up. I realized I really liked it and that it helped me to relax. From that time on, I decided to participate in more of the races that they have throughout the city.

Eduardo Nieto: About 4 years ago, I started running at night with my cousin and some friends. Little by little we would increase the time and distance that we ran, and soon we became interested in running 10k’s and even longer distances.

Francisco Mantaras: Part way through last year, some guys from Santex signed up for the race “Aguas Cordobesas” in the national park and asked if I wanted to join them. It sounded like it would be a nice challenge, so I signed up and went.

What do you do to train for races?

M.N: I go to Quality Gym where I do aerobic training to strengthen legs and core. I also go for runs in Parque de la Vida which is close to my house. It’s huge and has trails with all different levels of difficulty, perfect for training for different types of races.

N.S.: Recently, I joined a running team called Synergo and we exercise three times a week for about an hour and a half. We run no less than 6 or 7 kilometers around the Parque Sarmiento. For bigger challenges, a more thorough training is required, which is something I have on my mind right now.

F.S: We train three times a week for an hour and half each. One day we focus on interval training and race techniques. The other days we run about 7-10 km. Additionally, twice a month we schedule runs in the hillside around the city. Those runs are usually at 15 km long.

M.V: Right now, I try to go for runs in the park 3 times per week at Parque Sarmiento. I usually run for about 40 minutes, a distance of 7 km or more each time. Something that I think is really important for training is having proper nutrition. A balanced diet of meat, fish, chicken, fruit, and lots of vegetables is key for having proper training.

M.D: Running a 10k doesn’t require too much training. You can easily do it with going out for a run once or twice a week. I always try to improve my time a bit, so therefore I go 3-4 times each week to the gym. I do a bit of everything, mainly exercises to avoid injuries and fatigue.

E.N: These days I’m not running much, but not too long ago I would go for runs three times a week. I would try to run 4 km or for about half an hour. On weekends I would go on longer runs of about 10 km.

F.M.: I go out for a run twice a week after work. One of those days I focus on distance, the other I focus on speed.

How many races have you participated in? Which one was the most challenging?

M.N.: Thinking from when I first started, I’ve run in about 10 races. I ran the most in 2016, which is when members from the Santex Cordoba team ran is 6 races together – five 10k’s and one that was 14k. The 14k was the most challenging one for me, both mentally and physically.

N.S: I have run 5 races so far: three 10k’s in Cordoba, a 15k mountain run, and the Columbia XTrail which was 25k. Without a doubt, the latter was the most challenging. Not only was I not fit to run such a distance, but I was also not prepared for the difficulties in the terrain when going both uphill and downhill. Nonetheless, reaching the finish line felt awesome!

F.S: I’ve participated in several 10k’s. I’ve also run two half-marathons (21 km) in the mountains since our group training is focused on such courses. Plus, those are the ones I like the most. The most challenging one was a mountain race in Yacanto, close to the mountain Champaquí. It was 35 km and started at night, so we had to run the first few hours with a headlamp!

M.V: I ran in 6 races this past year. The most challenging was “Primavera Sana” where we ran laps around the Mario A. Kempes stadium until we reached 14 km. It was so hot that day and is the longest distance I’ve run so far. Fortunately, I was able to finish without and problems and was even able to improve my time! This encouraged me to keep training harder.

MD: I’ve only participated in 6 races, 5 here in Cordoba and one in Paris. Among the most challenging was the first one, mainly because I hadn’t trained well… and because it was the say after Santex Fest and the course had a terrible hill! Another difficult one was the second one, which I ran with Nelson Secchi. One of the last kilometers was straight uphill, and it was really tough.

E.N: Without a doubt, the most challenging ones were the two half-marathons I ran in Lima. I’d never run more than a 10k, so to run 21 km was pretty tough. With the first one, I only trained a little bit, up until two weeks before the race I could only run 16 km. Luckily, the day of the marathon I was able to complete the 21 km without stopping.

F.M.: After the “Aguas Cordobesas” run, I signed up for 2 more, one of which was a night run (21kcba.com). I liked that one the most because it was a neat course and fun to run at night. Also, a large number of people participated which made it fun.

What advice would you give to people who aren’t enthusiastic about running?

M.N: That even though it seems boring and tedious, the feeling of crossing the finish line and achieving your goal time is indescribable. There’s also a strong sense of camaraderie among runners. If they see that you’re tired or struggling on the course, they’re encourage you to keep going. I think it’s worthwhile to motivate yourself to try at least one race or marathon during your lifetime so you can feel the support and motivation that comes with it. It’s really nice.

N.S.: Just DO IT! (Please imagine Shia LeBeouf doing his motivation speech). Running is really an amazing outdoor activity. You will be competing against yourself, so you will find a lot of people trying to help you. Give it a try!

F.S.: Go for it! Whether it’s a 5k or a full marathon, I highly recommend giving it a shot. There’s a certain kind of energy among runners that is very special. Plus, the feeling of finishing is unlike anything else, and will keep you wanting more!

M.V: Running is a great sport and has lots of health benefits. It improves the functioning of your heart and lungs, helps you lose weight, relieves stress, and even helps you sleep. An inspiring movie is “100 Meters.” It tells the story of a young guy from Spain who was diagnosed with Multiple Sclerosis and sets the goal of completing an Ironman marathon. I highly recommend it!

MD: The first thing to keep in mind is that you aren’t competing against anyone but yourself. Participating in these kinds of races is a great experience. Being able to run on the streets without worrying about anyone running of you is awesome hahaha. I guarantee that you will meet lots of people who you never knew were interested in running. For me, of course the most satisfying is crossing the finish line.

E.N: To people who are interested, I would say to start little by little and make sure to maintain a healthy diet. It really helps to avoid injuries. I would also recommend finding a place in the city where lots of other people run. Seeing other people running helps motivate you. Lastly, what really helped me was having friends to run with, or run in a group or as a couple. That makes it a lot more enjoyable!

F.M.: Get started by going to a race and seeing what they’re like. There’s a really great atmosphere that surrounds races both big and small. Running is a nice activity, especially for people who don’t have much time on their hands or who have limiting schedules. It’s something you can do alone or in groups – anywhere, anytime. Whenever you have a free moment, you can just get up and go out for a run. All you need are tennis shoes and the will to improve.

Go for Golf!

Juan Cruz Leyba tells us about some life lessons we can all learn from the sport.

I started playing golf in 2009 because a friend recommended that I should try it. One time we were playing golf well past sunset, and he told me, “If you like it, you should start tomorrow and I promise you won’t regret it.” Sometimes when I have a bad day on the course I remember what he said and I want to go back to him and tell him just how much I regret it! But then when I finish at the end of the day, I’m always anxious to play another round.

Golf is a unique sport. As far as sports go, it’s the most democratic of all – anyone can play and compete against anyone else. Your skill doesn’t matter, nor your height, weight, age, or anything else. Of course, the more you practice the greater are your chances of winning.

Among golf’s many unique traits, there are a few that apply not only to the sport but to life as well. One of these is etiquette.

Even though each player is accompanied by someone keeping score, it’s generally understood that the player tells the truth with the number of strokes he/she has taken, etc. Of course, there is always someone who is tricky or tries to cheat, because such actions and lack of honesty are for personal benefit. But overall there is a lot of trust amongst players.

Another rule of etiquette is to always be considerate of the person or group who is playing the course behind you. If you leave a mark or damage to the course, you should fix it so as not to jeopardize the following games. Always thinking of others is a practice that helps us in all areas of life.

On a personal level, golf has taught me many things. The first tournament I won was in 2009 and before that I always lost and was always at a disadvantage compared to other players. However, for some unexplainable reason, I didn’t lose my patience that day or get nervous because I saw I was losing. When it was my turn, I did my best and in the end I won! Since that time, I learned to have more patience when playing and that the right moment always comes and you just have to take it.

They say that golf doesn’t build character, it reveals it. People who get anxious or angry quickly find that golf will just accentuate those aspects of their personality. Players often scorn their club, the ball, the hole, or even themselves. However, you quickly realize that it’s almost mandatory to learn to control these frustrations in order to play a better game – or to simply not end up throwing your clubs in the trash!

What I love most about golf is that you compete against others, against the difficulty of the course, and, more than anything, against your personal flaws, be they physical or mental. There are no excuses, and improving depends solely upon yourself. Also, the 19th hole (aka the bar) is one of the best parts of the game!

Since 2009 when I fell in love with the sport, I recommend it to everyone and tell them “you won’t regret it!” I know that’s not 100% true, but I also know that in spite of having off days, I’m always excited to get back on the course.

Things to keep in mind before adding a Software Dependency to your project

By Agustin Aliaga, Mobile Developer at Santex

In my work experience, one basic thing I learned about software engineering is that you don’t need to “reinvent the wheel” every time you want to achieve some functionality. Open source projects have revolutionized the way we work in that we can reutilize existing software in addition to collaborating with others devs. In the web-development ecosystem, there are plenty of frameworks and tools that already simplify things like user authentication, routes, templating (client-side and server-side), state-management, database queries, web sockets, etc. On the other hand, however, sometimes the existing solutions are just not good enough or it may be that there are no alternatives at all, but that’s a completely different story.

The ability to know when to implement the feature yourself and when to use an existing solution will be a crucial asset for your team. Adopting a new library, language or technology as a dependency to build your product without extensive research could become headache in the future, so you should always ask yourself at least these questions about it:

1. Does it meet all your needs?
Sometimes you’ll find a solution for your problem that does not cover all the specific features you need. In that case, you might have to deal with forking and extending it (if it’s an open source project), and this means greater time investments and costs. Are your team and the client prepared for this scenario?

2. Is there any documentation?
If so, is it well documented? Just as an example, one of the things I like the most about Django (web framework) is the quality they put into the docs. It’s remarkably easy to find the topics you need for the framework version you’re using. https://docs.djangoproject.com/en/.

3. Is it supported by a “big” community and/or a private company? Having a company or a community behind it helps a lot when you’re having trouble and need assistance from others. You may have to send a “help-desk” ticket (probably if it’s a paid service), find information on blogs or StackOverflow, or maybe even post a question to those sites. If you’re relying on the community to help you, your chances of being helped are proportional to the popularity of the software dependency.

4. Is it an “external service”?
If you rely on services like “Google Maps API”, “Facebook Graph API”, “Google’s Firebase”, etc. be aware that they may change in the future without notice, or they could just stop working at any time (temporarily or permanently). SaaS/BaaS solutions are great but you should think twice before setting them up as a critical piece of your system. Just as an example, read about what happened to Facebook’s Parse: (https://techcrunch.com/2016/01/28/facebook-shutters-its-parse-developer-platform/).

5. Is it actively maintained and improved?
If hosted on Github, “Pulse” and “Graphs” tabs will give you an idea of the latest activity. You probably don’t want to set up an outdated library, because it could bring retrocompatibility issues to your project. Also, if it’s constantly evolving, sometimes it could mean you’ll have to update your code repeatedly.

6. Is it tested?
Some libraries use automated tools to build and test every change that is introduced (applying continuous integration tools like Travis CI, Circle CI, etc.). This makes the library more reliable.

7. Are you compromising another dependency if you adopt this new library?
Sometimes libraries don’t play well together.

8. Will it affect your product’s performance, speed, size, etc.?
You should always take this into consideration. In the “web environment”, a giant front-end library could affect the browser’s performance and also increase network transfer times. On the back-end side, you want to avoid server overloading. In the mobile world, things get even more critical because mobile phones don’t have as many resources as a desktop computer. In Android, an app that wastes memory and CPU is a real candidate to be killed automatically by the operating system.

What about Android ?

The core-functionalities that Android brings to the table are sometimes more than enough to build simple applications. You could build an entire app by using bare Activities, Fragments, Views, AsyncTasks, Services, Content Providers, Broadcast Receivers, etc.

But in my experience, sometimes this means you’ll have to write (and then maintain) a lot of repetitive/boilerplate code. In other words, sometimes sticking to the core framework means you will have to invest more time to taking care of all the details. Some examples of libraries that made me more productive in Android development are: Retrofit, Dagger 2, and Butter Knife.

You should also know that if you add too much direct and transitive dependencies (plus your own code), you might exceed the “64K-method limit”, explained by Android documentation:

Android app (APK) files contain executable bytecode files in the form of Dalvik Executable (DEX) files, which contain the compiled code used to run your app. The Dalvik Executable specification limits the total number of methods that can be referenced within a single DEX file to 65,536—including Android framework methods, library methods, and methods in your own code. In the context of computer science, the term Kilo, K, denotes 1024 (or 2^10). Because 65,536 is equal to 64 X 1024, this limit is referred to as the ’64K reference limit’.”

If you exceed this limit, you’ll have to change your application to support “multidex”, which means it will have to load multiple dex files. This will produce higher compilation times, and also performance/loading issues in the app itself. So I’d recommend to always be careful with the dependencies that you add to your Android project.

Conclusion

I have seen these concepts apply not only to Android development (a technology I use every day at work), but to all software development in general. Every product relies on dependencies (whether it’s an OS, a service, a framework, a library or some other kind of software). The goal is to pick the best ones to maximize your productivity, without affecting your product’s performance, scalability, and capacity to evolve over time.

Learning Happens at Any Age

By Marcos Lopez – Business Analyst at Santex

Marcos Lopez spends some of his time outside of the office teaching Physics classes to adult students. Read more about his rewarding experience.

For what reasons did you start teaching Physics classes to adults?

Mainly because it is an experience that allows me to learn and grow. The fact that they are adult students makes the approach, methodology and type of class unique from most teaching experiences. My students live a reality that has nothing to do with the common student, and attending classes can be a challenge if you are located in an area that’s far away. I like being able to help those people.

Did you have any prior teaching experience?

I began to teach classes during my last year of college, at the local Institute of Computer Science (AES) first to children, then to adults. I spent 5 years of teaching all kinds of people –  adolescents who were forced to go, workers who needed to learn to use the computer, and to an elderly lady.  She was unable to write, and needed to communicate with her son who lived in another country via email, (it took an hour to write just one line of an email). That was such a rewarding experience. I was also Teaching Assistant for a course on methods and techniques of Scientific Research on the Phonoaudiology at UNC for 10 years.

Did you always know that you wanted to be a teacher?

Yes, always. It is an area where I feel comfortable and that I have the skills necessary to carry out the complex task of transmitting knowledge to another person. I like to ensure that the student understands what I’m teaching and has enough confidence to ask me anything (not only about the subject in question, but what anything that they may need to know).

How many students are in your class?

Last year there were 12 at the start, which ended up being 8 in the end. Making the time for class is more complex for adult students. The goal is to try to keep them in school and not let them leave and go back to their old ways. It is a big step to finish secondary school, no matter what your age is. It’s never too late!

How much time do you dedicate each week to preparing for these classes?

Generally, each week you should review the theoretical content that will be explained in the following week’s classes – how to put things into practice and that it is applicable to the students. They have to be able to process and apply the information in some way, because sometimes the context and the content may be totally new to them. On Saturday mornings I usually do this type of planning.

What do you think is different about teaching older adults than teaching someone your own age?

The need to overcome setbacks in life is an important factor. The students want to prove to themselves that they can overcome this hurdle in spite of the passing of the years and the reality in which they live. We are talking about my superiors, very respectable people, accepting life’s circumstances and talking to me, the teacher, with great respect. They have a lot of issues outside of the classroom, and many times I as a teacher must support them and listen to them. They may be day-to-day situations, that make it difficult for them to get to class. If they can’t find a babysitter, it may be that they talk to me about it and I end up teaching class with a baby on my lap. I want my students to be present in the classroom without distractions. They need to be able to have their hands and minds free so they can take notes and process the information I’m giving them. It’s a really gratifying feeling.

 

In what ways does the study of Physics complement your work as a BA?

The two are not specifically related, but being a  teacher enables you to improve the way you communicate with others. You become attentive to the behavior of the people you interact with, which enhances the way in which you communicate. Above all, it helps you stand in front of an audience and know what to say and how to reach them. This same idea can apply to the online meetings I participate in with clients and the teammates for my software development projects.

When (in my opinion) Not to Use Drupal

By Sebastian Gonzalez – Drupal Developer at Santex

I would like to clarify first off that I love to work with Drupal. I’ve been working with the Drupal platform for about 10 years now, and through all those years of getting frustrated over the same things, I realized something. I noticed that when certain clients or businesses had a previous project in Drupal that was successful, they would want to handle any future projects in the same way, when in reality Drupal may not have been the best tool to use.

In all these years of experience, I came across various projects and had a lot of different experiences – some very rewarding and others not so great. In some of these last projects that I didn’t think were so great, I noticed that something kept repeating. Drupal was being used for any kind of project on the simple premise that “it can do everything.”

If a client needs just any sort of app, we as developers usually say that Drupal is the solution. But what we should is is that Drupal could be the solution. Changing the message from “Drupal can do that” to “Drupal should be able to do that” is fundamental to starting any project off on the right foot.

Drupal is a CMS (Content Management System) that was intended to be a content administrator. Every page in the world has content, and when we talk about ‘content,’ we automatically think that it should be able to be handled administratively. This leads one to automatically think of a CMS like Drupal, WordPress, or Joomla. For me, the important question is what you want to do with the content. Where is this going and what is it going to be used for?

A lot of people view Drupal as a CWMS (Content Workflow Management System), and I agree with this vision. In my opinion, it makes sense to use Drupal when a business’s domain entails a lot of different types of content with multiple users who have different levels of permission. All of these users can alter the state of the content, making it fluctuate through different phases of the workflow where there aren’t annotations, reports, or emails involved.

The reality is that the vast majority of websites built using Drupal should not have used Drupal. This is not because Drupal can’t do the job, but rather because it’s a waste of all its functionalities that end up not getting used. A clear case of this is with classic brochure websites or institutional sites where the content is static and hardly changes over time. There isn’t much interaction between users beyond basic contact forms or a comments section.

Our world is currently dominated by mobile devices. Drupal was able to enter into the competition with its latest version 8, which came out in November 2016. Using and integrating components with the popular framework Symfony provides a robust back-end to facilitate API development. Drupal is jumping onto this trend with something called Headless – an architecture that uses Drupal as the back-end paired with a framework to present the data, which could be AngularJS, React.js, or any other framework.

In summary, I believe Drupal should not be used for:

  • Simple brochure websites
  • Single-purpose apps (like a chat application)
  • Gaming apps

I think Drupal should be used for:

  • News websites with multiple users
  • Multi-user publishing apps
  • Any app or website that includes workflows among people with different roles/permissions
  • A mobile version for Drupal

To conclude, here are 4 more pieces of advice:

  • Choosing one tool or another has to do with understanding the business’s control over the application or website. The more you know about the project, the greater the decision power in choosing which platform to use to meet those needs.
  • Use Drupal from the start and don’t try to switch and start using it for something else when things are not properly in place.
  • Stop saying “Drupal is the solution” and starting saying “Drupal could be the solution!”
  • Always explore alternatives because new technologies are coming out everyday.

Those are my two cents.

 

About the Author – Sebastian Gonzalez is an experienced Drupal Developer at Santex,  passionate about his work.  Sebastian is a strategic team player always willing to contribute and to solve problems.

Cultures Crossing Borders: Santex visit to Mexico

Mexico

This past month, Juan Cruz Leyba (Front-end Developer), Victor Zapata (Java Developer), and Emilio Garcia (Java Developer) represented both the Lima and Cordoba offices with a trip to Guadalajara, Mexico, to meet with the Santex client Tacit Knowledge. The two weeks of face-to-face collaboration brought the teams together in order to kick off a new project. See what Juan, Victor, and Emilio have to share about their experience.

Did you see many differences in the way people work in Guadalajara? Which were the most noticeable?

J: I did not see many differences. The methodologies are pretty much the same as we practice everyday. The only thing I noticed as being the most different is that they drink beer at work. While working! And it’s accepted by everyone.

V: The way of working is very similar. They have the benefit of working from home, but because of our visit, they came to work to be with us. They work in very collaborative way.

E: One thing that’s neat is that they can work standing up because they have adjustable desks that can change height! That’s something that seems to be trending these days.

What did you enjoy the most about travelling to Guadalajara for work?

J: I enjoyed getting to know a new city, a different country with different foods and habits. Also Mexican people are the nicest in the world. We had first class treatment starting with the hotel and in every other place we visited. We met other developers from Panamá, India, and Honduras, and we had a great exchange with them. It was a great experience.

V: The Tapatíos, as they call the people born in Guadalajara, are amazing people. They have great food, a lot of bars and catchy music. All the people we interacted with were kind to us.

E: What I enjoyed the most was to have the opportunity to work with this nice group of people. They were always open to sharing knowledge, exchanging ideas, and even joking around with us. I also loved the tacos.

Any must-sees in the city?

J: Downtown is beautiful, but you should go before 8pm. Chapultepec Boulevard is a must-go for great bars and restaurants. Plaza Andares is the best shopping place in town and Karnes Garibaldi is an awesome restaurant with the best service and the most typical recipes from Guadalajara.

V: If you have the opportunity to go there, you should taste the “Carnes en su jugo”, served in Karne Garibaldi. They have the Guinness Record being the quickest restaurant to serve your order. Another part of their folklore is the wrestling. It was a great experience!

E: Karne Garibaldi is a must-try restaurant.

Do you think this trip changed you in any way?

J: I don’t think it changed me, but it’s been very helpful to get up and running with a new project. It also helped me to confirm that we can work without having any kind of problem with different cultures, in an unfamiliar place.

V: I think that getting to know new places and talking with the people helps to enlarge your vision of the world, and it helps you to understand other thinking ways.

E: Yes, it changed the way I see the project and the people working on it. The good mood of all the folks in the office made me to enjoy this visit a lot.

Something different that you took away from the experience, and something that was the same that surprised you?

J: It was amazing how polite the Mexican people are. They are so nice that it never stopped surprising me. It was also very nice to see how people from all over the world could sit at a table and try to communicate and understand each other in order to make the project a success.

V: The Mexicans have an incredible way to be. They are so kind! Additionally, despite the distance between us, it’s incredible to see how our realities are so similar.

E: I expected the traffic to be similar to Lima and the people to not be so kind and talkative. I was totally wrong. They are in fact very nice, and by the time we were there the traffic was not such a big deal. I also never thought I would end up speaking with the same accent as the tapatios.

 

7 Tips for Automation Testing

Luckily today, the term Automation is becoming more common and popular in the immense world of IT companies. You just have to search a little bit in the web to find hundreds or thousands of articles in all languages talking about the benefits of automated testing and how much money companies can save using it, so it is not my idea to repeat the comments of my colleagues, but rather to share some of my experiences across more than 5 years of working as a QA.

I worked on 3 giant projects: the website of a major airline, a video on-demand provider, and a security application of one of the most famous antivirus services. I also participated in small projects where manually running the same test suites every day, up to 3 times a day, made me realize how necessary and beneficial it is to automate.

Automation Blog image

Here are 7 tips I learned from automating that I would like to share with you:

  1. The Code Reviews of other QA and/or Developers as well as those from POP or the BA are of GREAT importance.

  2. Reuse code. Writing the same code over and over again can be a waste of time when the changes in the data set are minimal.

  3. The tests have to be fail-proof, they should only fail due to errors in the product, environment, etc. and not because of a bad analysis made before creating it. This also includes the Unit Test.

  4. Ask for help. We are all proud people and it is a huge satisfaction to complete a challenging task without having to turn to someone for help, but sometimes pride translates into hours that only lead to losing time in the sprint, money for the client and the company, and can even delay the tasks of our peers.

  5. Respect good practices. When working as a team we must remember that our code can affect the code or work of others.

  6. Automated tests are not only a good tool for testers but also, when used correctly, can be very useful for developers.

  7. Adapting is very important. Sometimes because of licensing issues or for a number of other reasons, we may have to automate in a language with which we do not feel comfortable or simply do not like. Despite not enjoying it when it happened to me, I understood that the language was the right one for the software to be tested, and today I can say that at least I have some experience in other languages and technologies that will surely be useful again throughout my career.

Hopefully these tips can help testers and developers who are not yet familiar with Automation to understand more about its importance. At Santex, we are always open to sharing knowledge and listening to new experiences and opinions, so feel free to leave your thoughts on automation.

About the author: Mauricio Ardiles is an enthusiastic QA Analyst seasoned in a variety of testing skills. Strong background in automation testing and a certified Scrum Master.