Sunday, December 29, 2013
Saturday, December 21, 2013
Saturday, December 7, 2013
Of course, we hope that our job will be more than a source of income. The dream job should be gratifying, inspiring and rewarding on a professional and personal level. This is not always the case for everyone, but I can assure you, it is for me.
I am currently a Software Project Manager for Premier Aviation. We fix aircrafts so you can fly securely on your holidays. Personally, I do not touch the "Metal Birds" as I am part of the software team. The solution called PAMC, manages the internal projects. There is a lot of people involved into repairing an aircraft and a lot of procedures and regulations to comply with.
A few months ago, I didn't know anything about aircrafts beside that they could fly. I had to learn about (and still learning) regulations, manuals, processes and technical "mumbo-jumbo" of the aviation industries to be able to work on a software that is basically ensuring that an aircraft will be fixed properly.
Before that, I had to learn about accounting when I worked on an accounting software.
Before that, I had to lean about health regulations when I had to work on a Health and Medical oriented software for doctors.
Before that, I had to learn about the telco industries when I had to work on a monitoring solution for telecom sites.
I went to school the learn about coding, databases and how to create softwares. The reality is that my career is about learning others job so I can translate their work process into a computer process.
It does require "re-learning" each time you get a new job. It does require a great deal of time to become an "expert". Everything changes as you're career evolves and reaches new heights. Being a developper means that your job is never the same.
If you wished for a 9 to 5 job that requires static knowledge for the next 40 years, the software industry is not for you.
If you like the challenges, learning and moving into unknown territories, the software industry needs you!
Me.happy = (Me.job = Others.jobs);
Monday, November 25, 2013
Basically you could find commercial products, sharewares and freewares. The commercial ones were often referred as the "Full Version" and could be pricy. Sharewares were good enough to enjoy for a while, especially games, and could give you a good idea of the product before buying it. Freewares were often copies of already known softwares but offered a great alternative to the real stuff.
With the arrival of the Apple Store and Google Play, everything changed. An app is now labeled as "Free", meaning it is limited and contains ads. A regular paid app can be limited in some way and includes some in-app purchases to extend the features. A "Pro" app is normally the complete solution but can still have some optional features that you can buy. Basically, a lot of apps are sharewares disguised a "Full Version".
Games do implements the new "Shareware Model" more than anything else. It's getting harder to buy a complete game that does not need some kind of currency to get to the next level.
Real money has been converted into virtual currencies to hide the simple fact that it costs more dough to play. Gems, gold coins, rubies, diamonds and other elegant and shiny tokens are required to get to the next level, acquire more advanced items or to unlock some cheats.
If you want to be #1 at any game, just buy some diamonds and you'll be the most famous guy on the planet, for a few minutes... No need to practice, no need to start over. Just buy some power-ups.
Is it annoying me? Not that much. But I do get annoyed when I discover that I need to buy coins just to complete a level in today. Waiting 24 hours to grow a more productive crop or to build a new bridge just drives me nut. I want to play now because I have the time NOW!
Ads can be annoying and distracting. Limited features are understandable as the devs do need to eat too. The "Waiting-Game-Or-Spend-To-Play-Now" feature is more than annoying and will result into uninstalling the game, or the app.
Sharewares are definitively not dead...
Saturday, November 16, 2013
Believe it or not, computers have requirements. The most important one is humans... Us!
It may sound strange to state that, but often, developers will forget that the main goal of any software is to help a fellow earthling. It does not matter if your code is clean, advanced or even revolutionary. What ever you are developing will eventually be seen and used by someone, somewhere and somehow.
The time when a user had to comply by the limitation of a software is gone. 20 years ago, we had to manage with whatever the display would show us in a fully glorified 16 colors. If we were lucky enough, the video card would be able to display 256 colors brining a life like image to our eyes. Technically, developers could not do more than what the machine could do. Time has passed and technology has evolved to a point where a simple smartphone can predict our schedule for the day. Machines are faster, storage is almost infinite and connectivity is almost granted. That's why I can say that there is nothing that would require a user to comply by some technical limitation. If a user complains, it's probably because there is something wrong in your design.
The only limitation of any software is mind reading. We are still bound by the physical input like a keyboard or a touchscreen. Some breakthroughs were achieved in the last years like voice recognition and visual recognition but that's just a cooler way of typing on a keyboard. Technically, it's almost impossible to guess what a user really wants just by having him sitting in front of the device.
What can be done then? You have to think, listen and propose to find the best way to solve the problems that users are facing in their tasks. As an example, let's consider that you want to create an app that will monitor the current temperature in your house. Basically, it's a weather app for indoor. Easy to do, easy to code... Maybe not!
First, we have to assume that we have some kind of devices that will report the current temperature of the room. We need to interface the devices and be able to convert the raw data into a human readable format. Great, we are in business and ready to take over the world of apps. Get your favorite IDE to create your software, display the current room temperature on the display, package your apps and publish it on your preferred online store.
After a while and a few downloads, users will start to comment your app and rate it. Some will be nice, some will be bad... I mean really bad. What is the problem with those bad reviews? The app does show the current room temperature, it does not crash, the job's done.
With this simple scenario, it's easy to guess what users will be expecting:
- Good looking, according to their preferences
- Able to support multiple devices in the same house
- Able to identify the current room of the displayed temperature
- Keep a history of the readings and display some kind of stats and histograms
- Support both metric and imperial system
- Export the data to spreadsheets, on the cloud, via emails...
- Associate the energy efficiency of your electric consumption
- Trigger notifications based on some rules
- Interact and control each device
- Support remote access over the internet or cellular data
- Support data encryption, user access level, etc...
And the list could go on and on.
The basic idea was to display the current room temperature by interacting with some kind of device able to report the data. From that simple concept, a whole new list of "requirements" can be triggered by your users. Some may even ask for impossible things to do. Whatever the app and it's purpose, you will face new requirements, new preferences or new functionalities expected by the end users. Are you prepared to meet the demands?
It's up to you to set the limitation of your software for your users. Don't be surprised the some of them become angry and even hostile with those limitations. Logic and facts does not apply with the human factor.
If you take time to understand what your users really want, you may create the best app in the world!
Sunday, November 10, 2013
2- Apps can be hard to find if you have many apps as you have to find them by their name, ordered alphabetically. Specifically when you forgot the precise name when navigating the screens.
3- Apps should be directly removable from that app list. Why drag them to the home screen?
Thursday, November 7, 2013
Lately, I've dived into VB.net as my current job is using that language for the internal software we are developing. My old VB6.0 from 10 years ago just got useful again in my toolbox knowledge.
Basically, all major projects I've worked on were using Java or C#. Both are elegant and pretty object oriented. That' what I like: semi-columns and curly brackets... This is where the talk started between my colleague and I as he has more experiences with VB.Net than any other language.
It all started with a simple question: why does VB.Net is seen as a "cheap-for-beginner" language? As I can remember, it all started with VB 6.0 that was quite limited at the time compared to C++ or Java. Many times I had to figure out a work-around in VB 6.0 to accomplish some more advanced tasks that could be easily done in other languages. Should I say threads?
Anyway, time passed and VB 6.0 evolved into VB.Net as Microsoft established .Net as the main developpement framework for Windows. Ten years ago, we wanted to evolve technically and moved into some more serious stuff like C#, Java and C++. Silly rabbit, VB is for kids!
My colleague was a bit surprised as, being (cough cough) younger than me, he learned VB.Net at school and almost never heard of Visual Basic 6.0... He mentioned that over his young career, he always faced the silent stare of others when saying that he has much experience with VB.Net...
Is VB.Net really for kids? I've been resurrecting my old knowledges of that language back to life in the last few weeks combined with my skills in C# to master the beast. Beside a few "bad" habits of putting a semi-column at then end of each line, I've discovered how good VB.net has become. It may not be my preferred language, but it's as powerful as C# or Java if you know how to handle it.
Maybe it's time for old-timers to stop thinking that Visual Basic is not good enough and embrace a different approach of the language paradigm. You'll get a few surprises like not triggering an exception when executing a division by zero (try it, you'll see...) but threading and delegates are definitely there.
No, it's not just for kid, silly rabbit!
Sunday, October 27, 2013
Overall, Ubuntu Touch does work well on the Nexus 7. The only tweaks I had to do was to remove the file /home/phablet/.display-mir to avoid the "flickering-of-death" issue occurring when displaying the left toolbar.
It's a bit slow, but usable. Everything seems to work beside the camera that is not supported for now.
I was able to browse, add online accounts like Facebook and Twitter, listen to music and watch some online videos. Movies on the local storage were not playing at all. I did try some MP4 and some Ogg video files, but they never played, only showing a black screen and no sound.
Beside that, the experience was quite good. Some freezing occurred from time to time but nothing dramatic for a version of an OS that is still in preview on the Nexus 7.
I cannot say that it can be used as a main operating system for now. There are still too many missing apps and features. But if you like tinkering with the latest and greatest, go ahead.
I reverted to Android as I still need to use that device for other purpose. I will keep an eye on the developpement of a Ubuntu Touch as the next round will surely be more stable and more usefulness.
Great job Ubuntu Team!
Monday, October 14, 2013
I've created a small webapp that is taking care of being compatible across the different brands of smart devices using HTLM5 technology. See the review on Youtube:
It's free, easy and available at http://followme.crombz.com
No download required!
Thursday, October 10, 2013
Voice and SMS services were affected but the internet access was still working for some unknown reasons. The outage lasted a few hours and Twitter was overwhelmed with angry Rogers customers...
Having work in the telco industry for over 10 years, I was quite interested in the development of this crisis. I turned my attention towards Twitter to follow-up the latest update from the users themselves.
I was quite astonished about the comment I read... Many we're already asking for some kind of refund only a few minutes after the outage had started. Some others were ready to switch to another provider les than 30 minutes into the crisis. I've even seen some people so desperate because they could not text or have a talk on their cell phone. It was the end of the world for some teenagers... Lol!
I've been a customer of Rogers Canada for more than 10 years and always had a pretty good service with them. It's quite obvious that any technology will eventually failed one day or another. Anything and everything will break at some point in time. Rogers Canada outage was a major break down but everything return to normal a few hours later... They did their job and they probably discovered already how to prevent such a failure in the future.
Are we so dependent on our cell phone only a few hours without voice/SMS services is considered as then end of the world? After what I've seen yesterday on Twitter, I think so...
Sunday, September 8, 2013
You may have the skills, you may have the knowledge and the experience. But on a large project, it's almost impossible to know everything by heart. The interactions between components and classes are often complex and intertwined to a level that simply changing the logic flow of the GUI may alter the logic data flow. This can result in uninitialized objects, out-of-bound arrays or dead-locked threads. This is why any code modification needs to follow some simple golden rules to avoid having to execute a rollback...
Any project needs to be managed to reduce the level of risks of introducing new bugs. This is done by following some easy rules:
- The code will compile with the latest version of the whole project's source code
- The modification is working on your workstation
- Validate any conditions, extreme values, invalid data
- Check that your are handling exceptions and errors properly
- Double-check on a few other workstations. It may work only on yours...
- Add comments when required, update the documentation, write a test plan
- Run the unit tests!
- Update the unit tests if you changed the data flow
- Have a colleague review your code on complex modifications
- Execute a complete user scenario to ensure that what was working, still is...
- On committing your code, comment what was done and why, with bug number references, documentation and a small explicit text
- Make sure that is something goes wrong, your modification can be rolled back easily.
- When closing the bug as fixed, reference the revision number that your code was committed
It may looks as a longer process for a small bug fix. It's not! A 15 minutes bug fix may end up in hours of investigation and debugging time. Worse, your customers may lose production time which means loosing money because you wanted to meet your deadlines.
Time is money and we all know that money talks... Better be safe than sorry!
Saturday, August 31, 2013
When you get hired for a job, we need to remember that this company has many employees to manage and that it cannot meet all personal requirements. It's a matter of simple logic...
Of course, any good company always have some internal policies to accommodate their staff on some issues or personal constraints. They do their best to make your job a dream come true. But there is simply no way that they can meet all your demands. The reason is easy: they have to plan ahead to stay competitive and productive.
If you feel that your employer is unfair, think about this: how can you make a hundred people happy and productive? If you have the answer, better start your own business!
For example, everybody has to comply by their schedule. Being late is more than missing just a few minutes. Some people may be waiting on your arrival, a meeting may rescheduled, a potential customer may be lost. If a hundred employees are late only 6 minutes, the same day, the whole company has been late for 600 minutes... That's 10 hours for a single day, lost in production time, paid in salary...
This is just for scheduled times. Now add personal preferences like a private office, a closer parking space, a bigger screen, a more flexible tasks management, a remote access... The list can go on and on... The only way for a company to be fair with everyone is to apply the same rules to everybody, even if, in some cases, the individual deserves a special treatment.
A staff is made of real people and that means all kinds of people. You may be dedicated, someone else will be lazy. You may be polite, someone else will be rude. You may be loyal and someone else will abuse the rules. There will always be some employees that are dishonest... And your company has to manage those that do not care.
Does it mean that you cannot ask for something? Go head, the worst that can happen is hearing no. Make sure to:
- Ask for something that will benefit all the staff AND the company
- Stay polite and open minded
- Evaluate the financial impact (cost over benefits)
- Are not threatening (someone else can do your job too)
- State that you understand their reasons
Keep in mind that proposing or suggesting is better than requiring. If your idea will benefit others and the company, you may end up as a manager after a while.
If your demands only benefit you, there is a good chance that the company will decline. Unless you can prove that you will double your production time over night...
Fairness is not about you, it's about everybody. As Mulder would say: You are not alone...
Thursday, August 22, 2013
Today, we've just learned the the project failed only achieving 13M$ on a 32M$ objective. That is still an impressive performance to raise almost 13M$ in such a short time, but it was not enough.
I have been a long-term fan of Ubuntu, using it for my main OS for many years. Since 2004, I've read and heard about Linux everywhere, hoping for a mass adoption that would give the users some alternative to Windows on the PC. Many times, I thought that it was the "Year Of The Linux Desktop". It never happened, even with the big push of Android.
It's not the "Linux Desktop", now it's the "Linux Smartphone". I know, Android was build around Linux, but let's face it: Android did not contributed to promote *Linux for the general population. In the *NUX community, users have high hopes for mobile devices built around Ubuntu or any major Linux distribution. I'm not sure we will ever see that happening, like we've been waiting for the "Year Of The Linux Desktop". So what's wrong?
Apple was able to put on the market a new ecosystem in just a few years with mass adoption (iOS). Google also did it with Android and now ChromeOS. Why is Canonical not able to do it?
Of course, Canonical is much smaller than Apple or Google. It does not have the same marketing budget of those two giants. Nevertheless, it's not happening. Ubuntu is a great OS, even with it's quirks and mishaps. Everyone is crazy about online stores (AppStore, Google Play), but Ubuntu (and anything called Linux), did it many years ago with their repositories where apps and softwares had to be installed from their main servers instead of downloading from an unsecure website.
The repository concept (or Online Store) was way ahead of it's time. Windows users could just not understand that it was better to have a single secured and managed source for apps. Now, even Microsoft has it's own store...
So, again, what's wrong? Is it because the regular user is afraid of a new ecosystem? Probably not since iOS, Android and ChromeOS are winning the battle against Windows. Is it because it's free? Probably not as people will even download pirated copies.
Two things come to my mind: Availability and Marketing.
The Ubuntu ecosystem is just not "available". What I mean is that you cannot find in stores a PC running Ubuntu. A few attempts have been made (Dell), but it never took off. For the mobile division, there is simply nothing available on the market right now. There is no Ubuntu Store near you, there is no Ubuntu devices explicitly advertising "Running Ubuntu".
That brings me to "Marketing". Why would any user switch to Ubuntu? The main reasons given are:
- It's free
- Viruses and infection threats is almost non-existent
- It will run on almost anything
- It's great for watching movies
- You can manage your music with your mobile devices "out-of-the-box"
- Here's a killer game that's only available on Ubuntu
- Manage you business with ease using "Ubuntu Office"
- Make your PC beautiful
- Have Ubuntu Widgets to stay connected
Tuesday, August 20, 2013
First: let's state that any smartphone is just an object. Like a block of wood, a rock or a diamond... Are we in Minecraft here? Nay!
Second: The goal for a company is to make profits. Apple, Google, Yahoo, Ford, Microsoft, Facebook, Wal-Mart... They all have one thing in common: Business! Companies don't have a soul so they cannot be evil or heavenly. Technically, they sell products or services and hope to make some profits of it. You didn't know? Welcome to the real world, kids!
Let's assume that the ad on the TV got on to you... You buy the product, get home and enjoy your purchase. Technically, the jobs is done. The product has been paid for, the profit is now in the company's pocket. That's it, that's all!
What happens next? If the product is of bad quality, does not work as expected or does not really last long enough to justify the price you paid, you'll be disappointed. You'll eventually call it crap, cheap and a waste of money... This is where it gets interesting: You will tell all your friends that this product is not worth it. To some extend, you'll ensure that no one you know, will buy this product. That's marketing also... A bad one.
We do that all the time. If something has disappointed us, even for no good reasons, we'll tell everyone. Is it the Superman complex? I don't know... For some people, it's a mission, a calling, a Truth...
This is what we are used to experience with any purchase. If all goes well, then we're happy and we don't usually brag about it. Have you ever wrote a full post about the last toaster you bought? Me neither... But we've all purchased something that does the job, nothing more...
What would happen if the product you bought is way more than you expected. I mean that it provides you with new possibilities that you did not expected. The new car never needs oil changing, the dishwasher will empty itself, you TV will cut ads. You know, the extra mile that the company has done to ensure that you would be so happy that you will eventually talk about it.
And you will! Some people will even talk about it to a point of getting on the nerves of the others... We all know someone like that.
What was the product that you bought that over-delivered? Seriously, think about it for a minute. Your car, your last vacation hotel, your smartphone? That's it, we're getting there...
Go back in 2009, when the iPhone 3GS was released. All you had on the market was flip phones, Blackberries and Palm devices. Being connected to the internet was costing an arm and a leg. Screen resolution was badly pixelated and webpages were never rendering as they should.
I got the iPhone 3GS two weeks after it's launch. The device was purchased to provide me with a mobile internet access, managing my calendars and emails without having to sync, to ensure that my laptop could connect to the internet while traveling on a business trip. Those were my expectations, nothing more. In my mind, I was buying a BlackBerry that would not require BIS, any special software or some black magic voodoo trick to "unfreeze" the device.
I got what I was expecting... and more! Games were amazing! I could listen to my music, battery life was good, the display did look great (at that time). I could easily use my iPhone 3GS for any tasks. It was way more that I had anticipated. Above that, it was working flawlessly, anytime, anywhere, everywhere. This was heaven.
A few months later came the first update. Again, I was completely amazed to find out new features, new possibilities, new stuff. Over time, my iPhone 3GS was updated from iOS 3 to iOS 6 and I never had any issues in the process. It was working and providing more and more accessibility over time. It was like getting a new device each time, for free.
Then came the time to upgrade. I could make the choice between the new iPhone 4S or an Android smartphone (Samsung comes to mind...). I knew that keeping up with Apple would ensure keeping a great usage experience with my device. Going to another manufacturer could have provided me with new cool features, a new way of doing my daily tasks and maybe new apps to discover. But let's face it: It's a risk!
So as any informed geek, I read a lot about the other devices. All I read about was about speed, memory, customization, connectors, space... Mostly hardware stuff. I wanted to know what it could do better than Apple's flagship. I've seen a lot of goodies, a few minor things that were not found on iOS. Nothing in all I've read convinced me that changing the ecosystem I was used to, would benefit me.
I'm not saying that other products were inferior. I'm saying that the others products did provide me with something that I really needed. Widgets? Nah... Free file system? I could manage easily with some apps (AirDisk Pro)... What else, mini SD Card? Maybe...
Overall, the benefits did not outweighed some major issues: Upgrade coming really late (or never in some cases), branded systems, missing some favorite apps... It was just not simply worth it... I was happy with my iPhone 3GS, I should be equally happy with an iPhone 4S.
I bought the iPhone 4S because I knew what I was getting into: a reliable device, great apps, updates as soon as they are released, better features than the 3GS.
I stayed with Apple simply because the delivered way more than expected over time. My next smartphone will surely be another iPhone. It works, it's reliable, I enjoy using it, I can trust the brand and I know that my money will be well spent.
Whatever the company, whatever the product, this is the definition of a satisfied customer!
An Apple's satisfied customer is labeled as an iSheep... Strangely, fanboys do not understand why iPhone users will stick with Apple. "They are blinded iSheeps", I often read.
When spending money, will you spend it on a product that has disappointed you? Not me... But if I find one that does more than the job, I'll stick with it as long as I can.
Be it a smartphone, a car or a sandwich...
For some reasons, people will share the story to all their friends without hesitation, not realizing that they are in fact putting their name (account, email, ...) in a virtual list available to the world. The whole world of spammers!
Before sharing a "sad" story, think first:: If it was true, it would all over the news (TV, newspaper, radio...) not just on Facebook. It's easy to check if a story has some truth in it: Google it!
Some sites are dedicated at debunking those stories. Have a look, you may be surprized to find out that the story itself is really old or has many variants. Here's some good websites that you can use to validate your story:
Monday, August 19, 2013
Exclusively available on the iPad for now, TouchCast is a new concept where videos and interactive contents can be merged to create some amazing show. It's not a video editor at all. Think of it as a live recording studio where you can embed images, links, webpages and many other goodies.
A channel was created at http://touchcast.com/hotcoding to experiment the app and discover how sweet vlogging can be.
All recordings can be easily exported to Twitter, Facebook and even YouTube
Friday, August 16, 2013
Devices can be customized to our liking. In fact, the more it can be customized, the better. Changing the look, changing the behavior, changing the usability. We've been doing this with anything and everything thus completely forgetting to use the device for what it does and wasting vast amount of time just to realized that we need to go back to the stock version.
Android system has pushed the limit of customization. Understand that I find some tweaks amazingly beautiful and some extended features are just blow my mind. I still have some geek living inside me. I'm talking about Android, but it could be Ubuntu, iOS, Windows... It's just that Android system is revealing a strange behavior from it's users. They want it to be their own, at the cost of stability and losing some features.
Tweaking is not new. Some people are just really skilled at it and can provide some new trends on the market. Features that were found in Cydia for iOS made it the the stock iOS version. It's a big laboratory for skilled users to experiment. It's a good thing, we all need those people.
But for the regular user, the one just following blindly instructions on a random forum, avoid tweaking your devices. Loading a custom ROM, applying some extended features over the stock version may end up in a nightmare if you don't fully understand what you are doing. If you want to learn, go ahead! If you want to make a statement, stop wasting your time!
Often, "regular" users will try to impress others with the latest ROM or tweaks:
- You haven't created it so don't brag!
- Give credits to the developers, not to your purchase
- Your smartphone can be used as a web server? So what! You'll use it a few times before removing it.
- You've spend 60 hours rooting your device? Maybe you should review your priorities.
- You bricked your iPhone by trying to jailbreak it? Stop whining! Read, read, read and pray that you can salvage it.
- You don't like the stock version? Maybe you bought the wrong device first...
- Improving your skills and knowledge for your career
- Investigating some new ideas and concepts
- Solving a real life issue
- Saving time in your daily routine... I mean really saving time which include the time to get to the result.
Thursday, August 15, 2013
Wednesday, August 14, 2013
Microsoft Xbox One won't require Kinect (http://www.pcmag.com/article2/0,2817,2423002,00.asp)
YouTube: Matthew Santoro (http://www.youtube.com/MatthewSantoro)
The Pacu: a fish eating balls... (http://www.huffingtonpost.com/2013/08/11/pacu-testicle-biting-fish-spotted-scandinavia_n_3739478.html)
Created with Cute CUT on an iPad
Monday, August 12, 2013
Nevertheless, PCs and Macs always had a fierce competition between them more than a decade ago. One of the major point what that the Mac's mouse had only one button. How the hell can you work with only one button? That's what PC users were struggling with as the right button (as in left and right) was needed for a lot of task, most often to open up the contextual menu.
We are now in 2013, and guess what? The "right button" is slowly disappearing... Not for PC nor the Mac but from our daily use. With touch screen devices like smartphones and tablets, the function of having an extra optional access button is slowing fading out.
The "right button" function has been replaced by a "touch-and-hold" gesture, making the process for accessing advanced functions easier and more intuitive. Not always, but most of the time...
PC users could not imagine a world without a "right-button"...
And we now live in it! Almost...
Before Emails, SMS and Messaging,
There was communications between people...
"What is he talking about?" you might think. We've been more connected in the last 10 years than ever before. That's not quite true, we have more means to be connected but more and more people are socializing alone, at home.
Just a few years ago, you were wondering about what was going on with our friends. You would pick-up the phone and have a chit-chat for a few minutes, a few hours. You would pass in front of your best friend's house, stop for a cup of coffee and plan something for the week-end. Now, lots of people are simply having a look in Facebook and send some not too involving statuses to each other about something that could be done eventually.
Let's face it: It's far more easier to invite a bunch of people over Facebook for a BBQ than call each and everyone of them. It's far more easier to refuse to go to the BBQ or simply ignore the invitation. Gathering has been relayed to a simple text without more meaning and those famous spams about "Enlarging your p***s!".
There was a time when people were thrilled to plan a party or a birthday. In those days, you had to be careful about the number of people you were inviting to the event to avoid overcrowding your backyard. Simply because having a party was the best way to keep in touch, have a laugh and remember good old memories.
Today, everything is on Facebook/Twitter/G+. Current status, latest picture of the kids, your vacation videos. No need to ask for them, it's just there, waiting for you to click. What's left to talk about?
A "Like" or "+1" will never have the same meaning as seeing the smile of your audience while you talk about your latest adventures. A smiley will never have the same effect as the hug given to a friend.
Maybe if we stopped posting and start visiting each others, there would be less crap on our wall. I bet there would be more happiness between your walls...