LATEST FROM OUR BLOG

Take your daily dose of (only) relevant news, useful tips and tricks and valuable how to's on using the latest web technologies shaping the digital landscape. We're here to do all the necessary information sifting for you, so you don't have to, to provide you with content that will help you anticipate the emerging trends about to influence the web.

15 Android App Development Tools Essential for Every Developer's Toolbox
Simplify! This is the right way to go if you're “obsessing” over your productivity as an app developer. Declutter your toolbox and keep only the truly essential Android app development tools in there!   But which are they? What are the tools for developing Android applications that shouldn't miss from any developer's personal “arsenal”?  The most effective ones when it comes to helping you:   become (even) more efficient by improving your workflow and thus speeding up your development process develop higher-quality apps And this is where this blog post here comes to “the rescue”! It's a selection of THE fundamental Android app development tools that you should keep at hand (take it as your productivity-boosting toolkit). Ranging from: IDEs to emulators to design tools to game engines … and geared at streamlining your debugging, your performance-checking, they make the best Android developer tools to rely on in 2018: 1. LeakCanary Stay vigilant and alert for detecting any memory leaks in your Android apps right on the spot! But mind this doesn't take too much of your valuable time! Instead, rely on this powerful tool in your developer's toolbox for identifying them. It will take this time-consuming “burden” off your back and alert you any time it tracks down a memory issue threatening your app.  Moreover, LeakCanary provides you with a full stack trace so you can have those memory leaks fixed right away, too. 2. AIDE You'll have a crush on this tool if: you're a beginner, struggling to get started with that innovative Android app idea of yours (and, hopefully, to turn it into the next big thing in terms of Android app development) you're planning to learn Java and Android SDK: it will practically enable you to follow your favourite tutorials with highlighted code and then to get them tested... in real-time, on the very same device! In short: the irresistible advantage of AIDE and the very reason why it's got included in this selection of essential Android app development tools is that it runs on Android! Just imagine it: You get to develop your Android app on your device, nice and easy, then you get to test it... on that very same device! This is the true “superpower” that this development tool provides you with!  Note: don't expect it to be free, for it isn't, nor to “spoil” you with a full load of features.  3. Vysor The power that you'll unlock by including this tool in your smartphone application development process? It mirrors your real device on your PC. And this does turn into a true power if you're one of those developers who hate building their apps on emulators, yet they crave the advantage of using one. There's more! Vysor will even mirror your live app demos on projectors and big TV screens. So, if you think that this functionality matches your own work style, that it streamlines your workflow and helps you create a better app with greater ease, go for it! 4. Stetho Debugging native Android apps will never be the same again! That if you use this open-source platform wearing Facebook's signature here when you go “bugs hunting”.  And not only that it makes your debugging work so much easier, but it's also geared at landing you a much needed helping hand with your: inspecting the SQLite database checking the View hierarchy monitoring network operations A debugging tool that shouldn't miss from your toolkit! 5. B4A, One of “Speed-Injecting” Android App Development Tools  For “rapid development” is what you'll achieve by leveraging this tool's features. And these are: the ability to develop Android apps using the much simpler BASIC programming language  a visual editor for manipulating your views to your liking wireless debugging In short, B4A (Basic for Android) makes such a convenient IDE and interpreter enabling you to create your app in a simpler procedural programming language. Plus, it comes packed with other advanced features to speed up your development process (as above-mentioned).   6. Android Studio The “Holy Grail” of all Android app development tools! Officially it's the IDE for Android.  But in reality, it's your own “Swiss knife” to use as an Android developer! Since it plays multiple roles crucial for your mobile app development workflow: it's a compiler that you get to leverage to create a file system for arranging your app project, to create multiple APK files it's an editor for the programming language that you'll decide to use in your app's development process (whether it's Java, Kotlin, C++...) it's an XML editor (providing you with a “design view”, as well, that will guide you in displaying your app's elements on the screen; crucial for keeping up with Google's Material design guidelines) it also includes the Android SDK itself (yet, the Java SDK needs to be downloaded separately) In terms of pros and cons, do expect a steep learning curve for developing with Android SDK and Java. But once you've got through it, do expect to gain access to unlimited support, to a whole bundle of advanced features and to unmatched integration functionality. From this standpoint, Android Studio is the “can't live without” tool-set for any developer!  7. Codota Does this scenario sound familiar to you? You hit a dead end down your app development roadmap and you need to go over to Github or StackOverflow and have a quick look at some code examples! Well, Codota enables you to do precisely that, but without having to leave your IDE. Talking about speeding up your development process, right?   8. GenyMotion Far gone are the days when GenyMotion used to be “just” the developers' top choice whenever they wanted to create their apps using an Android emulator. It has now grown into a complete platform whose powers you get to harness for: developing your app testing it deploying it Do consider it as a “candidate” to be included in your own toolbox of Android app development tools essential in your work this year. 9. Visual Studio with Xamarin These days you get Xamarin right out of the box with Visual Studio, Microsoft's IDE. One supporting a whole wide set of languages: JavaScript, C#, VB.net, and others, too, via extensions. And what's the “deal” with Xamarin? What makes it “essential” for your toolbox?  it enables you to develop cross-platform apps using C# (have you been “toying” with the thought of developing an app both for Android and iOS using the very same code?) … to test them on different devices that are connected to the cloud A word of caution: accessing and working with Java libraries isn't really “a child's play”, do be prepared for that; also, you need to accept that you'll be losing some of Google's cool integrated features and support. 10. Source Tree It makes any smartphone app developer's trump card making his work on Git as efficient as it can get! Basically, this tool's aimed at making Git cleanly organized so you can visualize all your work there — commits, changes, branches — in the form of an easy-to-navigate-through structure. And all this without the need to use the command-line! One that can only boost your productivity, as it helps you sweep through Git with great ease! 11. Fabric, One Those Powerful Android App Development Tools You Should Be Using And its power lies in all the capabilities that it's been invested with. It provides you with a whole set of features designed to help you: develop deploy extend … your Android apps' functionality fast and easily.   12. Eclipse Once developers' very first choice when they started selecting the Android app development tools to build their toolboxes with. This until it got “dethroned” by Android Studio! And yet, Eclipse should still be part of your toolkit. It's an IDE that supports a wide range of programming languages after all (Java with the Android SDK here included).   Note: still, do not expect it to get you “spoiled” with out-of-the-box support, like Android Studio does, so be ready for some setting up work! 13. InstaBug A tool that takes “bug hunting” to a new level! Practically it empowers users to share video, audio recordings, screenshots, detailed logs whenever they detect anything suspicious in your app. And these user-generated “signals” become priceless in your constant attempt to keep your app bugs-free! 14. Unreal Engine If it's a cross-platform, feature-packed game app that you're planning to build, this game engine might turn out to be your best “ally”! Here's why: it provides easy support for Android it's open source when it comes to graphics, it does have an advantage over its “rival”, Unity   15. Takt Team up with Takt in your major lags and bugs detecting “adventure”!  This library will help you check your app's FPS thoroughly and spot down bugs right in its development phase.  For you don't want them to linger on in there once your app's being used in its production phase, now do you? The END! I know what you might think right now: Each developer's toolbox depends solely on his/her preferences, goals and personal work style. It's perfectly true and I've anticipated this “objection” myself. Therefore, I've grouped here only those truly essential Android app development tools that one should “carry” in his/her toolbox. ... irrespective of his work style and goals set for his/her app. ... Read more
Silviu Serdaru / Feb 24'2018
When & Why Use RESTful Web Services Instead of The Traditional SOAP-Based Ones?
When to use REST? What are some practical use cases of REST web services? How does it work? What's the “catch”, why has this new architecture for web services had such an impact on the industry? How is it any different/better than SOAP? Why use RESTful web services after all? “Tormented” by all these questions related to the REST approach/alternative to building web services? Relax now, you'll have your answers in a minute (or a few seconds)! For here are the REST-related “enigmas” that I commit myself to solving in today's post:   What is REST and how does it work? Which are the specific use cases for building web services using the REST architecture? What's driving it? Why is this technology increasingly popular? What sets REST apart from the traditional SOAP approach to web services? When NOT to use RESTful web services?   And now... the answers that I promised you:   What Is REST and How Does It Work? Here are some valid answers to all your “What?” questions: “What is REST?”, “What are web services”, “What are RESTful web services?”   REST is the native API of web browsers REST is how one creates web services web services are... the future of everything: creating and publishing APIs that would do CRUD (create, read, update and delete) … thus making machine-to-machine communication possible, making apps' functionality accessible to multiple users and external systems RESTful web services are those resources on the web that can be tapped into for retrieving certain information   “And how does it work?” First of all, we should get one thing straight: REST is not an official standard! It's more of an architectural style, the one organizing a network of systems, where the “systems” are basically servers and clients. Here's how it works: Clients make a request to the web servers; the latter process it and, in response, return the appropriate web pages. And in this request-and-response equation, RESTful web services are the very resources on the web that servers tap into for retrieving the requested data. Does this definition shed any light on your RESTful web services-related questions?    Why Use RESTful Web Services? Here's the actual context where the RESTful web services technology emerged and “grew like a beanstalk”, with a huge impact on the industry: The web “exploded” and, starting with web 2.0, the interaction between websites and client apps, between multiple sites, multiple devices, sites and databases, became increasingly intense. And more and more “demanding”, calling for a new technology that could handle and streamline this communication taking place on the web. And here's where web services and REST, a new way of building them, emerged! The REST architecture is designed to build:   maintainable lightweight scalable    … web services, which make retrieving the data requested and “exposing” all that information far less cumbersome. As compared to the conventional SOAP/XMLRPC web page-scrapping method. Data's being passed on the web, from one website/app/device/database to another, faster than ever these days. Just think about all those websites incorporating Twitter and Facebook content! Or of websites “capturing” data coming from multiple sources: financial information, sales data, online communities... RESTful web services is the technology that streamlines all these intense data “harvesting” processes! This is the answer to your “Why use RESTful web services?” question.   When Should You Use RESTful Web Services? 5 Practical Use Cases There are specific use cases when you should go “the RESTful way”. Adopt this approach to building web services if:   1. In your distributed app it's crucial to keep the coupling between client and server components to a minimum:   you'll need to be able to update your server frequently, without having to update the client software, as well your server's going to be used by multiple clients, yet you don't want them to have control over it   Just make sure you follow all the REST constraints for achieving this kind of basic level of coupling. Maintaining a purely stateless connection will be challenging, but not impossible if you “follow the rules”.   2. It's a custom, on-demand digital product that you're developing Such as an Ubercart or Drupal online store that you're putting together on a remote cloud server:   you set it up create a suitable architecture that would scale the environment if/when this your custom product goes viral   3. You want your game's high scores and user community forums to be displayed both in-game and on the web Let's say that you're a mobile/console game developer facing the above-mentioned “challenge”.  In your practical use case you can:   have your Drupal site publish an API, using Services (thus doing “CRUD” with the data that needs to be “harvested”) leverage a RESTful type of communication with the Drupal site in order to retrieve that data and have it displayed in-game, on mobile/console, too   4. You want to create a user alert system on your e-commerce website One that would alert your customers, via your e-commerce mobile app, whenever a product that they visualized becomes available (or its price drops). Also, you want those alerts to pop up in an iPhone app and on Facebook, too. And the solution is: Your Drupal site (for yes, it's a Drupal site that you own in this scenario) will use Services & a custom module to have the example.com/alerts/uid API published. And it's this specific API that the iPhone app and Facebook will use for manipulating that particular content to be shown in the user “alerting” message.   5. You want to provide (paid) access to commercially-controlled data Such as movies, music, stock or trading data. Imagine that you own an event venue and you publish a ticketing API. People (such as ticket brokers) will be charged for gaining access to it. In short: RESTful web services for can be used for all kinds of commercial activities, as well. Just use them to create and to publish the API that will do CRUD with precisely that commercially-controlled data that people are willing to pay for gaining access to!   What Sets REST Apart from the Traditional SOAP Approach to Web Services? Of simply put:  Why use RESTful web services instead of the traditional SOAP-based web services? Here's a list of strong arguments:   with REST, all that intense data interaction is more lightweight; it doesn't weight so heavy on your web server like a SOAP page-scrapping method would with REST, only the specifically requested information gets retrieved, instead of having whole web pages scrapped off the “target” content (like with the SOAP approach) the architecture is way simpler than the SOAP one and it leverages the standards (and protocols) of modern web   And what does this last argument even mean? It means that heavy SOA (Service Oriented Architecture) is shifting to lightweight WOA (Web Oriented Architecture), since these days apps need to tap into a web that's “packed” with REST resources. And so, instead of leveraging a few point SOA services, data gets collected and displayed via millions of granular REST resources. Developing arbitrary apps, that interact over the network, has become conveniently easier. Complex things (systems) get simplified!   When not to Use REST Web Services? There are — as I've just pointed out — use cases when the REST approach is the perfectly suitable one: business-to-consumer apps. But there also are specific cases when RESTful web services don't work so well: B2B apps! Take this practical example here: A bookstore might find it a bit more challenging to make a volume purchase from an online vendor as compared to a regular customer.  It would need to “juggle with” several apps to track shipment, sales, determine re-orders etc. And where do you add that one app might need to be re-entered into other apps, turning the entire process into an overly complex, hard-to-manage one.   The END!  Have I managed to answer your “Why Use RESTful web services?” question or not quite? Or just partially?  Do be honest and, if it's the case, share your other REST inquiries and dilemmas with me! Or point out those use case examples or explanations presented here that you'd like me to shed some more light on. ... Read more
RADU SIMILEANU / Feb 23'2018
Magento Enterprise vs Magento Community: Which One's Best Suited to Your Needs?
So you've made up your mind: it's Magento “fuel” that will be powering your e-commerce website. And now you're facing challenge no. 2: Magento Enterprise vs Magento Community!  Which one of the 2 Magento platform's editions is right for you? What are the key differences after all? Which one's best suited to your current feature needs? And how about your daring goals and growth plans? Which one's scalable enough to accommodate your expansion plans? The quickest/easiest/surest method to “find your match”: confronting your current requirements with each one of the 2 Magento editions' sets of features and functionalities. Note: the method is the same if you're having a Magento vs Drupal Commerce "dilemma" instead, for instance. Then draw the line and just do the math! So, without further ado, let's dig up the:   Magento Enterprise features  Magento Community features  And draw the profile of the “ideal” online store for each one of the 2 Magento editions   1. Is Magento Free? Price Tag vs Value With or without a price tag on. This is the most rudimentary “Magento Enterprise vs Magento Community” comparison that one could make.The first one does come at a price, while the open source version is free to download off the internet and, implicitly, free to use. And now the question that arises is: does the price tag come with added value, as well? Without question! The Magento Commerce edition —  merging, since June 2017, the Enterprise and the Magento Cloud Edition —  comes not with 1, but with 2 price tags on. Along with a heavy load of enterprise-level features and high-end functionalities. And it's your own needs and goals that will tell you whether... it's worth it. Whether a free variant, with basic online selling capabilities or a bulky feature set, with a heftier price tag on, suits you best.   2. Top Magento Open Source Features  The open-source community edition is Magento's downloadable version. And, as you can expect, it provides much of the same functionality, same basic performance and shares the core features with its enterprise counterpart. And here are some of these core features that you can power your e-commerce business plans with and get your functional online store up and running in no time:   modern tech stack regular updates automated code merge payment integrations scalability automated testing flexibility (install the extensions of your choice to ramp up your site's functionality) responsive layout fast product import integrated video & marketing tools integration customizable & mobile-compatible admin dashboard guest checkout registered customers   A word of caution: Determine your site's specific goals and needs right from its planning phases.This because implementing specific functionalities from your “wishlist” might require you to install additional plugins and to craft some custom code.     3. Does Your e-Commerce Business Fit the CE Client Profile? It does if your answer is “Yes” to most of the following questions:   Is it a small-scale e-commerce project that you're starting? Are you planning to keep extension/plugins implementation to a minimum; can you already predict that there will be no need for custom modules in the future? … no need for 3rd party design and web development teams to handle your not so complex site project? Are you looking for an e-commerce platform that should provide you with the basic features needed for getting your store up and running? On a shoestring budget? No plans to grow from a small e-commerce site into an enterprise online store? Or to enter new markets? Is it a versatile platform that you're looking for? One leveraging open source for delivering you a significant load of basic plugins and templates to custom-tune your store with? … and to deliver rich experiences to your customers with?   In short: Magento's open source community edition (CE) is built, from the ground up, with the basic needs of small e-commerce business owners in mind. It's a turnkey solution for small sites. Note: having just a few products doesn't necessarily mean that your site's needs are basic. Therefore, this is no indicator that you should opt for Magento Open Source.   4. Magento Enterprise vs Magento Community: Do You Have Any Expansion Plans? Just think these growth plans through and the sooner the better:   Would you like to enter new markets at some point in the future? Would you like to ramp up and customize your site's current functionality at some point? How much do you want it to grow? Is scalability a critical feature for you?   Do set up your e-commerce goals at this phase of the project! For once you've got your site running on Magento Community (or Open Source), switching to Magento commerce will be more challenging than you expect:   the two editions' code bases are different you'll need to give your website a full redesign the Magento Open Source templates that you will have installed won't work in Magento Commerce   So, take some time to think about the future, your e-Commerce site's future... Since “upgrading” it, later on, to Magento Enterprise, comes with inconveniences and compromises that you'll have to make (e.g. losing some of your team's hard work).   5. Top Magento Enterprise Features  Magento Commerce — the 2-in-1 Enterprise & Cloud edition of the platform — provides you with enterprise-level features right out of the box.  Along with the price tag comes the added value transposed into a set of online selling capabilities that you don't get with its open source counterpart. So, do consider this when you're having a Magento Enterprise vs Magento Community dilemma. Capabilities geared at meeting your enterprise online store's complex demands from an e-Commerce platform. And here are the enterprise edition's top features:   PCI compliance MAP pricing cloud hosting 24/7 technical Magento support, including a dedicated account manager  RMAs visual merchandiser: drag & drop UI and sorting rules for easily organizing your product category pages by variables of your choice (best/newest products, by color etc.) segmentation & targeted promotion features: personalize your customers' shopping experiences full-page caching improved UX: features such as wish lists and gift registry advanced marketing features: it provides you with reward points that you can use for setting up your own customer loyalty programs better performance: expect better page loading times as compared to Magento Open Souce geo-targeting B2B features: create custom catalogs and multiple payment options, set up multiple buyers, create several company accounts etc. content staging enhanced security out-of-the-box: PA-DSS payment bridge, credit card tokenization... separate databases for Product data, Checkout, Order Management: a major performance boost improved tax calculation functionality   In short: Magento Commerce offers you more out-of-the-box functionality as compared to Magento Community, where you'd need to engage in custom coding and extension implementation to have these features “injected” into your site)   6. Go With Magento Commerce If... … you plan to launch a large, enterprise-sized online store or a small-scale one, but you're “nurturing” major expansion plans! In this case, the Magento Enterprise vs Magento Community “dilemma” is an easy one: Magento Commerce (now including the enterprise version, as well) is perfect for you!  For your big, “needy” website site, that you expect to:   accept non-standard forms of payments, too (e.g. check or cash in hand) enrich your customers' shopping experiences with functionalities such as gift registries, wishlists, buy gift cards provide you with advanced inventory management and detailed reporting functionalities, with no need to install any extensions (or to write custom code) for this   … definitely needs a more robust, premium-grade features-packed platform. And Magento Commerce is the one.    The END! So, how about now? Do you find it any easier to decide for one of the 2 Magento editions? Do any of the eCommerce business needs and expectations that I've outlined here match your own? If so, which of the 2 feature sets  —  Magento Enterprise's and Magento Community's — suits them best?       ... Read more
Serge Karpyuk / Feb 22'2018
Which Is The Open Source Document Management System That Best Meets Your Needs?
The future belongs to those that not only store their heavy load of documents in a conventionally digitized form, but also “maneuver” it with utmost efficiency: have instant access to it, track it, retrieve it, organize it. How? By leveraging the perfectly suited open source document management system! Speaking of which, I'm sure you've already got your “feature wishlist” ready:   it should be easy to learn and to use  it should provide you with version control … with cloud access functionality … with document workflow … with document tagging it should come be equipped with an intuitive, user-friendly interface it should be free   But since it's open source document management software that I'll introduce you to in this post here, feel free to take this last “wish” off your list! OK, so this is how the ideal, the one size-fits-all-contexts DMS looks like. But which one's the best for your own business? The one that best meets your specific business needs'? Your organization's unique requirements? For narrowing down your choices you should submit yourself to this quick questionnaire:   What type of documents will you be storing though your future DMS? Where will you/your team need to access them? In a single office, across an entire infrastructure of offices scattered around the globe, on mobile devices? Is it a plug & play, a full-featured custom solution that you need or just the software to meet your needs? Which (your needs) are the “standard” ones, fitting into a particular market. What is your budget?   And while you're still pondering on some of your answers, let me narrow down your choices even more. To a list of 6 document management systems worth your attention:   1. Alfresco, On Top of The List of Any Organization Looking for The Right DMS Geared, from the ground up, to meet the particular requirements of those enterprises having critical documents to store and manage. Therefore, the best answer to your “What Is Alfresco?” question would have to be: "A robust enterprise open source document management system, fueled on open source, powerful enough to automate document-intensive processes within an organization" And here are some of its most “tempting” features:   its complex user role system ensures effective collaboration across large teams/departments robust content repository freedom of customization: feel free to tailor custom workflows and content models to perfectly suit your specific needs its collaboration web interface is geared at boosting team productivity public source code: it leverages core open standards access to a full set of add-ons and community-maintained extensions that you get to extend your DMS's functionality with it seamlessly accommodates any productivity app \that you may want to integrate later on: Google Docs, Microsoft Office etc. Alfresco mobile apps (for Android andiOS)   Should I also point out that NASA and the European Union, themselves, capitalize on Alfresco's:   open standards unparalleled robustness in handling massive amounts of content convenient extensibility unmatched freedom of customization that it “spoils” its users with?   2. LogicalDOC Takes Open Source to a New Level An open source document management system that comes in two flavors:   Professional Community    A highly versatile one, that can be used in any web browser, perfectly “equipped” to:   handle a significant load of documents boost the team's productivity while enhancing team collaboration, as well   Some of LogicalDoc's top features are:   quick & easy installation and intuitive use  multilingual full-text indexing task manager & events log version control & document searching local file system reporting & statistics task manager & events log Web Services (SOAP & RESTful) import from ZIP archives   And the list is literally an endless one! Do consider this feature-loaded, free open source document management software when looking for the right DMS to meet your requirements.   3. Seed DMS, A Powerful Open Source Document Management System If for you “the best document management system” means “the most powerful one”, then you might want to take the Seed DMS for a test drive. It's mature enough, so it's already built a strong reputation around it, and it's enterprise-ready. Built to store and to share huge loads of documents. And now, here are its other strong points worth your full attention:   real-time collaboration version control  users & groups management HTML documents editing built-in metadata support (author, description, keywords) document review & approval workflow full-text search functionality for creating online presentations  multi-level content directory, which supports +32000 documents    Should I go on? For, the deeper I delve into the pile of Seed DMS features, the more I find. Or even better: how about you give this open source document management system a chance and see whether these features do meet your organization's particular needs.   4. Feng Office: More Than “Just” a DMS  Why “more”? Because you get so much more than just the “standard” document management and team productivity-enhancing features.  And these additional, beyond the “conventional” functionalities are:   Task management Time tracking Workspace management Knowledge management   Its set of features also include:   automatic alerts & reminders notes calendar timesheet wiki & forum support reports & tags workflow processes task templates   5. OpenKM, A Conveniently Extensible DMS And extensibility, coming from its OpenKM plug-in architecture, is not its only “superpower”. Versatility comes right after, since it practically supports:   all web browsers all major DBMS databases all common file types (OpenOffice, PDF, Office, XML, HTML, JPEG etc.)   Moreover, it empowers teams to set their own rules (logic) for automating the documentation process. For example, imagine that you'll need to set up a rule specifically for moving a particular document to a new destination. You can do that with OpenKM! And now, the (almost) full list of features that this open source document management system has been supercharged with:   workflow OpenMeetings integration document encryption/decryption functionality automatic key extraction antivirus integration web services API OCR integration HTML editor a functionality to create new documents leveraging pre-built templates and forms Dropbox integration mobile interface & Google apps synchronization metadata navigator (along with categories, thesaurus, keyword...)   6. Kimios, The Best Alternative to the Heavy Document Management Software If it's an alternative to the robust, heavy “document managing machines” that you're looking for, lightweight Kimios makes the perfect fit for your needs. And it's not just its lightness that convinced us to add it to this list of document management systems, but its entirely service-oriented architecture, too (among others). This means that it follows the client-server model: Web client, Kimios for Office, Kimios Explorer and all the other supported third-parties are connected to the main Kimios server. To its central server, “in change” with exposing the web service layer covering Kimio's features. Speaking of which (this DMS's features):   repository customization using metadata customizable search engine document-centered functionalities: create, delete, update check-in-/out feature version control  user rights management bookmarks documents (along with creating bookmarks and advanced requests functionalities)   And it goes on and on... and on. Note: Kimios does integrate with Microsoft and Windows Desktop environment, but only under commercial license! The END! These are the top 6 open source document management systems that you should consider selecting the right one for you from. And this no matter how your own list of feature needs& specific requirements might look like.  ... Read more
Serge Karpyuk / Feb 17'2018
Mobile App Development Trends in 2018 That Will Redefine the Digital World
That we're witnessing a major shift these days — from web apps' supremacy to mobile apps' domination — is definitely no news. It's been a while since it grew from a trifle into a (digital) world dominating... reality. And so, anticipating which of last year's trends will be growing into “megatrends” and which of the newly emerging ones will be the mobile app development trends in 2018 with the highest impact on the digital landscape … becomes crucial for anyone in the mobile app industry. Should you continue to bid on virtual reality and cloud technology? Is blockchain nothing but a bubble about to burst this year? What place should wearable apps and IoT have in your mobile app development strategy? We've done our research, approached the experts and the authority figures in the mobile app development industry apps and here's what we've come up with: An 8-point list including precisely those high-impact trends to keep an eye on in 2018: 1. Wearable Devices and IoT Are “Exploding”! And So Is Wearable App Development And I'm sure you, yourself, anticipated this: that IoT devices and wearable apps will go from niche to mainstream. With more and more industries adding up to the list of IoT adopters — education, smart health, automotive — and with Apple cutting off the price constraint, it's only reasonable to expect wearable devices/apps explode in 2018. … to expect to see more apps for wearable devices (and not just watches) and an increasingly powerful impact of IoT on mobile app development. Considering that smartphones are needed for controlling IoT devices...   2. Android Instant Apps, One of the Growing Mobile App Development Trends in 2018 It's a fact: Android Instant Apps will be one of those (not so) new trends in mobile app development to be growing like a beanstalk this year! The reasons behind this anticipated growth have a too powerful impact on the users not to turn from a predicted scenario into a... reality of the digital realm:   they're conveniently easy to use: no installation required and yet they're more on the native app's side and they work like websites they use fewer resources they can be accessed from anywhere (WITHOUT installation)   In other words: the border between the realm of apps and the landscape of websites gets even more... blurrier this year.   3. Accelerated Mobile Pages A huge “hit” ever since its “debut”, in 2016, Google's AMP is definitely on the up and up in 2018, too. And no wonder why this open-source initiative — accelerated mobile pages — still “runs the show” and continues to “seduce” mobile app developers: it's a publishing technology (HTML's stripped-down version) geared at boosting mobile pages' performance … practically it injects both sites (on mobile devices) and web apps with high speed … keeping the bouncing rate to a minimum Now, these are strong enough advantages for this trend to be one of the high-impact mobile app development trends in 2018. 4. Predictive Analytics Gains an Increasingly Powerful Influence on Mobile UI/UX What do you think about joining the “gang” of tech giants in the mobile app industry (Google, IBM, Apple, Facebook) and jump on this trend in 2018? Why bother? Well, because: we'll be witnessing a shift from mobile apps as “mere” utilities to apps as integral components of your workflow this advanced software is the “offspring” of AI and machine learning … with a major impact on your customer journey via your mobile app's UI/UX … since it provides valuable predictions related to your business (by leveraging the available data) for you to capitalize on (and to do what it takes to enhance your app users' experience) 5. On-Demand Apps Will Ride The Tide of Popularity How could they not? After all, they're making people's lives easier by simplifying their day-to-day activities, such as: looking for laundry services ordering food looking for cleaning services looking for rideshare and taxi services And not only that on-demand apps will be in... high-demand this year. They'll be one of those mobile app development trends in 2018 expected to “bloom” with new cool features and functionalities: business bots UI/UX enhancements predictive analysis m-commerce facilities 6. Blockchain: Newer Mobile App Development Trends in 2018 With Huge Potential Blockchain has been intriguing, “seducing” and gaining so much good press, that it can't but continue to grow, as a trend, in 2018, too. And it's no surprise why: it provides companies with a shared, unalterable ledger storing their information (transaction histories or bitcoins) presented in the form of blocks … “unalterable” meaning that the info can't be modified unless all the subsequent blocks get modified; which would automatically lead to the entire network's collision A principle of “openness” that continues to “seduce” legit businesses. Businesses that do seize the huge potential of providing transparent access to the blockchain. 7. Dare to/Continue to Bid on Cloud Integration This Year The future of mobile apps and their development is one where the benefits of cloud technology are being (finally) leveraged to their full potential. And here I'm talking about benefits such as: better storage reduced costs in hosting and equipment improved page loading times streamlined operations increased productivity and collaboration And nonetheless: developing mobile apps over the cloud will enable them (the apps) to run seamlessly across multiple platforms. Now that's superpower, don't you think? A huge “leap” into the future of mobile app development software! 8. AR/VR Will Have an Even Higher Impact on App Development Strategies These 2 technologies are already too well rooted in the long-term future of mobile apps that they can't go anywhere else but... UP. AR and VR continued to be developers' trump cards for creating jaw-dropping mobile app experiences. Even so more this year, with all the compatible hardware expected to invade the market. And it's not just the gaming sector that will benefit from augmented reality graphics and videos presented in VR, but others will fall under its “spell”, as well. Here I can only think of the huge potential that these 2 technologies have in the retail sector. Speaking of which, are you think what I'm thinking? About Amazon Go and all the doors that it has opened for other similar apps to steal the spotlight this year? End of the list!  These are, judging by the stats, forecasts, and expert opinions that we've analyzed, the 8 high-impact mobile app development trends in 2018. Also, judging by all the enhancements in hardware: button-less mobile devices more and more powerful chips … and the emergence of a new level of digital speed — 5G — I can't but be certain that these 8 trends here will get turbocharged in 2018. ... Read more
Adriana Cacoveanu / Feb 05'2018
Docker Image vs Container: Closely Related, But Distinct. What's The Difference?
Welcome to... Dockerland, a place of never-ending confusions! The most frustrating one of them all — for every novice planning to explore Docker — being the “Docker Image vs Container” dilemma. “What, aren't they one and the same concept?” But you know that this is a rhetorical question: you just sense that they're 2 distinct concepts... Yet, you can't really identify the differences: How are Docker containers and images different after all? Now let's clear up the Docker Image vs Container confusion once and for all: First Things First: What's a Docker Image? A file (or file-like... thing) that gets built from a Dockerfile, by running a "build" command.  Moreover — and this is particularly important in defining a Docker image and setting it apart from containers — it's an inert, immutable type of file. A template-like file (you could also imagine it as a snapshot of a container). It's only when started, with the docker command, that a docker image starts producing a container. And since images in Docker tend to grow quite large, they're built on a layered structure (multiple players of other images). This way, only a small “load” of data gets sent when loading images over the network. Wrapping Up:   you can take the docker image as an application that you'd like to run a docker image can't be “running” or be “started”; once the “docker run” command is... run (obviously!), the image grows into a docker container, so... mind the inevitable confusion   Which Leads Us to The Question: “What's a Docker Container Then?” The not 100% accurate, yet generally accepted (even if halfheartedly) definition is:  “A container is a running instance of an image” Now, let me detail... Practically, the very act of running a Docker image produces a Docker container. You won't find a more straightforward explanation than this one! And containers are (or they should be) the very reason why “learning Docker” turned into one of your top resolutions for 2018 in the first place. For they're:   lightweight using fewer resources portable easy-to-be-deployed   … ways of running and managing your applications. If you're fond of analogies, here's one that will undoubtedly help you come up with a clear answer to your “Docker container vs image” dilemma: If a Docker image was a class, then a Docker container would be an instance of a class (a runtime object).  Wrapping up now:   once you start an image in Docker (so once you use the “docker run” command) you basically have a running container of this image in question   a container is created by adding a top writable layer to a Docker image and thus by initializing multiple settings (container name, ID, network ports etc.)   and it's due to that very writable layer, storing all the changes applied, that you can have multiple containers running off the same image; each and every one of them preserving its own distinct data state   Docker Image vs Container: Key Difference Revealed The most significant difference clearing up the confusion is the following: There is a top writable layer setting Docker images and Docker containers apart It's that very layer, storing all write operation corresponding to the containers in question, which:   gets deleted along once/if the container, itself, gets deleted, while the underlying image remains intact   enables multiple containers to share the very same underlying image   Now to better explain the key differences founding this dichotomy, let's reduce everything to a simple, clear-enough (hopefully) formula: a docker image + a docker run command = a docker container (meaning a running instance of the docker image) … a container equipped with its own writable layer and which can get listed via a "docker ps" command Is everything any clearer and simpler to you now?   Or Maybe a Metaphor Example Suits You Best? In addition to my “class vs instance of a class” analogy, let me try now explaining this tricky Docker dichotomy by using a metaphor... or two:   Let's say you have a film and a VHS of (which stands for our “image” in Docker). Then, imagine you'd place that VHS into your “virtual” VCR. In this case, the VCR stands for your Docker container. Better?   Or you could see the Docker image as an executable file on a disk (an app's file); once you run your application, it promptly creates an instance running in its memory. Now that very instance is our metaphorical Docker container.   Have I managed to clear up your confusion or just... deepen it instead?   Docker Image vs Dockerfile: How Do You Set Them Apart in “Dockerland”? Now, let me rewind to the stage where we can't even be talking about containers (not just yet). Where not even Docker images are yet built: the Dockerfile stage. You can take a Dockerfile as a... recipe for creating Docker images. And here's how the “cooking of an image” takes place:   a Docker command is run in that Dockerfile and so an image gets built   Clear as daylight: a Dockerfile is a... file that you create which, in return, creates a Docker image when you run a separate build command.   The END! Do be honest now: have I managed to clear up your “Docker Image vs Container” confusion? If so, then “solving the puzzle” around this dichotomy will make a huge jump start on your Docker learning plan for 2018. Happy learning!             ... Read more
Silviu Serdaru / Jan 23'2018
10 Ecommerce Trends in 2018 To Keep an Eye On, Implement and Capitalize On- PART 1
Ready to.... stare into your crystal ball? To turn your visionary "superpower" on and... get a glimpse of the future of ecommerce? Not the distant future, but the future of 2018. And hopefully, identify the 10 ecommerce trends in 2018 that you should integrate into your digital marketing strategy and start capitalizing on. ASAP, needless to add! Way before they even grow into powerful trends and competition in the digital marketing arena becomes a... throat-cutting one. No need actually! For I've already sneaked a peek into the near future for you (no need to take out your crystal ball anymore, you can jump straight to turning information into gold). And I've identified the trends in the ecommerce industry that will rule in 2018!  Here are your “10 ecommerce commandments”:   1. Unlock Customer Reviews' Full Potential (Even the Negative Ones') Not joking: pushing forward, right into the spotlight, exclusively the positive customer reviews will just lower users' trust in your brand (ironically enough). Perfection generates suspicion, right? So, always “bet on”... transparency. Well, of course, it goes without saying that a significant “load” of honest high scores does have a huge impact on your conversion rate and on your brand's overall reputation.  Now getting back to customer marketing as one of the huge ecommerce trends in 2018: it's a strong proof that you're valuing your users' feedback. Which leads to recurrent shopping and attracts prospects like a magnet: you'll be regarded as a trustworthy, transparency-valuing brand, that does “give ear to” its own customers' feedback. In other words: strive to encourage your customers to review their shopping experiences with you. For instance, a redeemable voucher/discount could make a powerful incentive, don't you think?   2. Add an Augmented Reality Dimension to the Shopping Experience   From a shopping experience to... experiencing shopping. Seize the difference? If the use of VR/AR technology for retail purposes ignited in 2017, it will simply... explode in 2018. It will continue to be one of the most influential ecommerce trends in 2018. So you'd better join brands' “race” for coming up with innovative visual ways of showcasing their products. And, thus, make it possible for your customers to interact with your products while enjoying that true-to-life feeling that... might just turn them into buyers. Whether it's:   a virtual tour of your brick and mortar store a new AR feature integrated into your online store, rivaling Ikea's own “Place” app any other functionality for turning your users' shopping experiences into virtual interactions   … you'd better hurry up and start brainstorming ideas   3. Influencer Marketing Will Only Get More... Influential in 2018 That's right, influencer marketing will continue to dominate the retail landscape this year. It's an increasingly valuable resource for you to tap into. In 2018 even so more, since influencer marketing software comes to streamline your efforts in this direction: it's built to point out to you — the online store owner/digital marketer — precisely the suitable methods to use depending on the specific leads that you're targeting.  Now, this is gold!   4. Community-Led Marketing: One of the Rising Ecommerce Trends in 2018 Watch for the “community-lend brands”! Or, even, better: become one! And it's customers themselves — communities of customers, that start seeing themselves as “brand representatives” — that will be pushing these newly emerging brands right in the very first line this year. How can you, too, capitalize on community-led marketing?  Here are a few sure strategies to turn your customers into your own brand's advocates. Into your marketing strategy's driving force:   set up the perfect contexts on your social media channels for your customers to actually discuss your products   encourage them to share their honest experiences after trying/using your products (user-generated content turned into an incentive for new prospects!)   allow them to actually test your products and let them answer other prospects' questions on your Instagram or Facebook account   A customer-centric approach with a focus on user-generated content! Or valuing user feedback to such extent, that customers eagerly turn into your brand's advocates. This is what community-led marketing comes down to, and this is precisely why it will turn into one of the most powerful online shopping trends in 2018!   5. Don't JUST Be Present on Multiple Channels: Be Consistent! “About 85% of online shoppers start a purchase on one device and finish on another” (Google) Need I add more? Your “cluster” of presences on multiple platforms should turn into ONE consistent presence on them all. Into one seamless visual and UI experience for your customers. And how do you achieve consistency while going omnichannel, omni-device and after you've integrated all your presences on different channels? Here are a few common sense tips and tricks:   from navigation to payment gateways to the design itself to all the branding elements  and social media content   … make sure you stick to the same self-imposed guidelines. It's one and the same entity that your customers should feel like they're interacting with, not one having... multiple personalities.   End of Part 1! Till we meet again to analyze together the other powerful trends identified for you, do take your time to ponder on these first 5 ecommerce trends in 2018.  Have you anticipated them already? Are they relevant enough to your own ecommerce business? Do you find them powerful enough for “fueling” your online marketing strategy this year or are you still a bit skeptical that they're more than just buzzwords?  ... Read more
Serge Karpyuk / Jan 18'2018
Progressive Web Apps vs Native Apps: Which Type of App Best Serves Your Needs? Part 2
Native Apps: They're Not Going Anywhere... Not Anytime Soon In other words, in the "progressive web apps vs native apps" competition PWAs make an alternative, not a replacement for native apps. For native apps are here to stay and still offer plenty of advantages themselves, too, (while progressive web apps do have their own limitations to consider, as well) for companies and developers not to give them up anytime soon. And here are just some of the key reasons why they continue to steal the spotlight. Reasons that might help you find your own answer to the “PWA or native app?” question:   big brands, already having their own native apps running on their preferred platforms, don't feel the same pressure as low-budgeted companies to switch to PWAs; it's some sort of “inertia-driven stubbornness”   app developers with a wide experience with IOS or Android don't feel like replacing their familiar work routines with a PWA-specific one, even if the latter is less complex   let's admit it: the web-based app development does come with its own limitations that still need to be addressed    Progressive Web Apps vs Native Apps: 6 Reasons to Go With a Native App As PWAs exploit some of the native apps' drawbacks, so do the latter turn some of their “rivals'” limitations into their own strong points. For instance:   PWAS might be widely adopted thanks to their universal compatibility, hassle-free user experience and short development time, yet they're not capable to interact with the devices that they run on   native apps can do that; moreover, they're perfectly adapted to leverage a mobile device's smart functionalities   also, PWAs run in web browsers, which, might turn into a disadvantage: it could slow them down    … whereas native apps, being installed on the given devices, first things first, will inevitably load a lot faster; there's no longer a browser intermediating the process    Now, let's dig out other strong reasons for... going native:   1. No Ifs and Buts: They're Faster As previously mentioned: with the web browser acting as an intermediary, progressive web apps can't compete with their native “rivals” in terms of performance. As opposed to PWAs, native apps are installed on the devices that they run on. Therefore, not only that their code practically “lives” there, but it's platform-bound. Written with the requirements of that specific mobile operating system in mind.   2. They Come With Built-In NFC Support  The “Near Field Communication” support is vital for certain businesses. So, do consider this native apps' advantage (or this PWAS' shortcoming, depending on how you want to put it) before you give a final answer to your “progressive web apps vs native apps” dilemma. If it's of critical importance for you that your customers should be able to pay for your services with their phones, then you need to go native. There's no way around this! PWAS can't yet interact with the NFC chip enabling this type of payment.   3. They Provide a Quality Control Guarantee  All the app stores' “bureaucracy” might be discouraging enough, yet there are good intentions — resulting in a quality guarantee —  behind all those steps to take: filling out forms, reading specific forums, following strict app development guidelines, waiting for your app's review process to be carried out etc., etc. Instead of seeing them strictly as... highly restrictive, take them as multiple filters that clear your app of any malicious code. As for PWAS, just think about it: The easier it is for anyone to access your app by just visiting the web page hosting it, the easier it is for a hacker, as well, to exploit the vulnerabilities of that connection.   4. GEO-fencing: A Superpower Placed in Your Hands And this is no exaggeration, especially if it's a retail app that you're planning to develop. Just give it a moment of thought: GEO-fencing will enable you (your marketing team) to define virtual “boundaries” in the real world; once a customer's mobile device enters or exits that defined area, a push notification gets triggered. A powerful functionality to ponder on when you're facing a “progressive web apps vs native apps” decision-making challenge. A smart functionality that native apps can easily exploit, while PWAs can't.   5. They Can Leverage a Device's “Smart” Capabilities And this is one of the major advantages of native apps over progressive web apps! They interact with the mobile devices that they're installed on, meaning that they use their smart features to their full potential. Features such as:   proximity sensor wave lock: you don't want your users' phone screens to go black right in the middle of a video you've inserted in your app, now do you? ambient light   6. They Easily Interact With Other Apps Take for instance this highly frequent scenario: A user tries to set up his/her account within your app and he's given the option to enter his Facebook login details It's the perfect example of native apps interacting with one another. And this is but just one example of inter-app communication that helps users save valuable time.   So, What Kind of App Should You Develop After All? “ The one that best serves your needs.” So, get them clearly defined first things first:   Do you need to develop a basic customer service/retail app? And, moreover, you're both budget and time-limited, as well? Then a progressive web app might just be the perfect fit for your project's needs.    Is it a mobile app exploiting smartphones' advanced functionalities to the fullest that you need to build? Then you should consider opting for a native app: it's fast —  which will definitely impact the overall user experience — it integrates with multiple payment gateways and it harnesses the power of “smart” features (Geo-fencing, NFS, wave lock etc.)   Also, when trying to pick your winner in the “progressive web apps vs native apps” contest, consider the expected future advancements, as well:   mobile devices will get injected with more and more advanced technologies, tilting the balance in native apps' favor    progressive web apps will continue to be constantly supercharged with new and new functionalities, that go beyond a web browser's standard ones (integration with Bluetooth, with NFC, with smart devices' hardware features)   That being said: the choice is yours to make! I've only pointed out the main criteria and the key benefits/limitations for you to weigh and to compare, so you can make a fully informed decision. ... Read more
Silviu Serdaru / Jan 12'2018
Progressive Web Apps vs Native Apps: Which Type of App Best Serves Your Needs? Part 1
The paradox of choice, right? Didn't it use to be so much easier back in the old days, when you had just one option at hand? "You wanted to go mobile, you just knew this meant “pumping” money into a native app." Clear as a day! But what do you now, when you're facing a "progressive web apps vs native apps" situation? Which app development approach is the perfect fit for you? For the nature of your business and for your app project's specific needs? PWAS seem to be “stealing the show” these days: first they intrigue, next they “seduce” with the hard-to-resist-to promise that they deliver: Empowering small businesses to compete against the "giants" in the mobile app development arena! And still: native apps won't be going anywhere anytime soon! Moreover, they'll get even more robust and faster, as the devices that they run on get more and more advanced. And as they'll continue to leverage their great advantage over progressive web apps:  Leveraging mobile devices' smart features and capabilities and thus delivering an enriched user experience. Now, to put an end to your “turmoil”, I've come up with a sort of “inventory” listing the set of benefits that you can reap from choosing one type of app over the other. Here it goes:   But First: What's a PWA? And How Is It Different from a Native App? “An app running inside the user's web browser, that he/she doesn't need to download and install beforehand. And which, moreover, is injected with native app-like functionalities and wrapped in a seamless user interface.” This should be a clarifying enough answer to your “What's a PWA?” question. Bottom line, the key difference between PWAs and native apps is: The first ones run inside web browsers, while the latter run on the mobile devices that they're installed on. The concept behind this revolutionary approach to app development is both daring and ambitious: Cutting down the overhead and the discouraging complexities usually associated with a native app's development process. And thus:   reducing time and costs eliminating the step where your users download it from an app store    Progressive Web Apps vs Native Apps: Top 7 Benefits From Choosing a PWA For it all comes down to benefits, right? What's in it for you if you choose one app development approach over the other? The level popularity that one type of app has gained falls shortly behind the very set of benefits that you get. Now here are the most valuable ones to consider when you're having a “PWA vs native app” dilemma:   1. You'll Reach Out to A Significantly Wider Audience, With Fewer Resources As compared to developing an Android-focused or an IOS-focused native app, a PWA will practically grant you access to all platforms. It's a “develop once, run everywhere”, type of situation: A PWA is a “platform-agnostic” type of app. Needless to add that your progressive web app's extreme versatility will help you reach the widest audience way quicker and with minimal costs.   2. You'll Reduce The App Development Cycle Times  And this is, undoubtedly, that heavy-weighting advantage tilting the “progressive web apps vs native apps” balance in PWAs' favor. The very reason why progressive web apps gained so much attention in the first place. With native apps' development process “famous” for:   all the headaches it causes all the complexities specific to any platform-bound solution all the time-consuming steps to take: crafting some eye-catching screenshots, writing down the description, identifying the right keywords and strategically sprinkle them across the description...   ... PWAs emerged in a highly favorable context and they “exploited” precisely the overhead associated with a native app development cycle. So, they managed to “lure” developers unsurprisingly easily by:   eliminating most of those complexities from the app development process eliminating the need to build multiple platform-bound versions of the same app   Also, it goes without saying that reduced development times translate into reduced costs.   3. It's a Unified User Experience That Your App Will Deliver  The advantage of being platform-agnostic bubbles up to the user experience itself. Having a unique version of your PWA running on all platforms, accessible to all customers, it'll be easier for you to deliver the same user experience to your entire user-base.   4. A Hassle-Free User Experience Requiring the Minimum of Effort Compare the 2 following scenarios: a. a hypothetical user visits a certain app store, chooses an app, waits for it to download and then goes through all the steps required for installing it on his/her mobile device b. a hypothetical user lands on a website and gets to use the app right there, almost instantly, with no prior installation; moreover, if he/she wishes, he can save the link as an icon on his device's home screen Isn't it obvious why, in a "progressive web apps vs native apps" competition, the advantage of easy access will always outweigh most of the native apps' benefits? In a few words:    you, as the app owner, get to deliver the content you wish to deliver with utmost ease while your users access it using the fewest numbers of steps … and high accessibility translates into a higher level of user engagement   A win-win situation!   5. Users No Longer Need to Install The Latest Updates Themselves A major convenience both for you and for your apps' users:   you'll get to easily keep them up to date with all the changes that you might apply to your services with no updates to run and no need to re-download the app, users always get the latest version of your app, upgraded with the most recent functionality features that you will have added to   6. Extended Compatibility: All It Takes Is a Modern Web Browser That's right since PWAs run on HTML 5 — the standard for web content — a modern web browser on his/her mobile device is all that a hypothetical user needs for accessing your app. Talking about maximizing your app's reach, right?   7. You'll Cut Down Costs For Building and Marketing Your App You can get a progressive web app up and running (and marketed) in no time! With considerably fewer resources of time and money to invest. So, if:   you're facing a limited budget you're in the retail or hospitality business   … the benefit of bringing your customer service app to your customers quickly and in a cost-effective way is just... priceless.   The END! Well, not the end on my post on the progressive web apps vs native apps “competition”, but the end of the list of reasons why you should consider going with a PWA instead of a native app. Stay tuned, for in the second part of this post I'll be:   putting the spotlight on mobile native apps revealing to you all the benefits that you can enjoy from choosing this type of app development approach ... Read more
Silviu Serdaru / Jan 12'2018