Drupal is a popular open-source platform for content management that provides rich functionality and high customization capabilities to enhance the user experience. Many companies are already making the switch to Drupal 8 and reaping multiple benefits for their website development processes. Are you too considering the idea of migrating your website to Drupal? To help you better understand why you should take this step and how can Drupal maximize your website's performance, have a look at these key reasons to start your Drupal migration. Why should you migrate to Drupal 8? The right question should be: why not? There are plenty of reasons why a Drupal migration should be the next step in your web development endeavors, such as: Drupal 8 has a mobile-first approach out-of-the-box. Unlike previous versions of Drupal, you don’t need to handle any customization for building a responsive website or application. Drupal 8 is mobile-friendly at its core. Drupal 8 provides improved front-end perceived performance. With BigPipe technology being part of Drupal 8’s core, you don’t have to worry about website performance anymore—you’ll benefit from faster loading times out-of-the-box. Drupal 8 is easier to use than previous versions. For everyone complaining about the back-end experience of managing and editing Drupal websites and custom modules, Drupal 8 was designed with these complaints in mind. Managing the content on your website is now easier with Drupal 8 thanks to new features that make editing more accessible and comfortable. Drupal 8 provides multilingual support. In other words, you can easily create multilingual websites due to Drupal 8’s multilingual core capabilities. Drupal 8 has enhanced security features. Drupal has been long known as one of the most secure CMS on the market and Drupal 8’s security updates are here to confirm it. Drupal 8 is highly SEO-friendly. With Drupal's advanced SEO capabilities, your website will have better visibility and rank higher on search engines. Drupal 8 has plenty of tools for upgrading SEO, including a SEO starter kit that you can easily access and manage. Have you decided to move your website from WordPress or Joomla to Drupal? Or maybe you are looking to upgrade Drupal 6 or 7 to Drupal 8? If you answered ‘yes’ to either one of those questions, then a Drupal migration is the next step for you. Excellent choice! We know it wasn't easy for you to finally make this decision. We also understand that you may now face a major challenge: migrations are costly and time-consuming. There are plenty of pre-planning requirements for migrating to Drupal 8, which are often long and tedious. Outsourcing your migration projects to a third-party company that provides a reliable migration service might be the safest bet. Drupal is a scalable and flexible solution that can be moulded into anything you need it to be. It has enterprise-level security and an innovative modular-type system. It also has a steep learning curve because of everything you can do with it. Because of this, it requires Drupal-specific developers who have to know how to use it to its full potential. Optasy is here to make this transition smooth and time-effective by offering high-quality Drupal migration services. The goal is to have the least amount of impact on your company's daily activities as possible. Downtime = lost revenue and we don't want that to happen. Our Drupal team of experts will handle your migration carefully to minimize downtime and maximize the power of Drupal. Sooner than you think, you’ll have your migration projects completed and your Drupal website up and running to its full potential. To better understand the process of migrating to Drupal, have a look at the main migration workflow used by our Drupal professionals. Steps To Migrate Your Website To Drupal Step 1: Your website will undergo rigorous analysis. Our team of Drupal experts will take a close look at your current system's database. We perform functionality tests and deeply analyze the current framework. We then come up with a customized solution specific to your company's website needs. Step 2: Decide which modules and design theme your current website can migrate to Drupal. Then we figure out which ones we'll develop from scratch and which ones simply need an upgrade. Step 3: Once planning and analysis are complete, the migration of your website's components begins. This includes content, your database, usernames, emails, plugins, extensions, and user groups. It also includes metadata so that you don't lose any previous SEO work completed. We handle this with the greatest caution. We secure your valuable data and make a smooth transition from one platform to another. Step 4: Test, test, and more testing. We test until we are 100% certain that your newly-built Drupal website runs perfectly. And with significantly improved performance. A Smooth Migration Process We guarantee you that the whole migration process will go smoothly. Our Drupal migration services won't interfere or slow down your team's workflow. It also won't cause any downtime on your website, so you won't lose out on profits. Our confidence relies on our access to using the best tools and resources. We also apply a proven efficient methodology based on many years of experience. The migration process of your website happens on your server and behind the curtains. This guarantees zero impact on your daily workflow. It enables you to keep making sales or getting leads while your website migrates to Drupal's platform. Benefits Of Optasy’s Drupal Migration Services Faster website Improve performance No downtime Experienced Drupal experts Seamless data and content migration Maintain SEO work previously completed Upgrade To Drupal 8 Upgrading to the new Drupal 8 will make your website work (and look great) on any device to meet the needs of your diverse audience. Some other key benefits of making the switch to Drupal 8 are: Mobile-first ready. This version of Drupal has been designed to embrace the shift towards mobile. Fully responsive web design right out-of-the-box. Multilingual features. The platform is built to support any language. Mobile-friendly admin features. Now you can see everything right on your phone. Supports mobile app development. Easier to add content more than ever before. Flexible content delivery. This enables you to create and deliver content to any channel, device, or application. Your migration to Drupal doesn’t have to be complicated. With the right Drupal migration services and support from a professional Drupal team, you can enhance your web development projects to deliver optimized, accessible, and intuitive user experiences. “Although you could flex Drupal 7 to adapt to this changing environment, the real power and flexibility comes with having a Drupal 8 architecture where this flexibility is already in the core. That has implications for performance, adaptability, simpler architecture of services around Drupal, etc.” - Alex Moreno, Drupal software architect.
Adrian Ababei / Aug 12'2021
The design and development industry continues to grow more competitively over the years. Agencies that have specific niches and all-around firms are popping left and right. Aside from those, there are also different types of development and design works. As a player in this game, we are driven by our clients’ reception. We value their success and their feedback more than anything else because that’s how we will continue to thrive and grow. We are OPTASY, a digital commerce, marketing, and web development agency based in Toronto. With 16 years of experience under our belt, we’ve experienced so many ups and downs that equipped us with the knowledge we need. We’re an internationally renowned and award-winning team that continues to work hard for our clients. With that said, it has just recently come to our attention that we’ve been selected by Clutch, an established B2B review agency, as one of our nation’s industry leaders. Our team has ranked among the top Drupal and Magento designers and developers because of our spot on projects. "We are thrilled to have been chosen as one of the leading web developers by Clutch!" - Adrian Ababei, CEO of OPTASY, Inc. Clutch also created a list of the top fifteen companies. They measured agencies’ ability to deliver and service focus to determine the industry leaders — and OPTASY ranked sixth on their Leaders Matrix. In addition to that, our team is also found on The Manifest’s, Clutch’s sister site, top 100 mobile app developers in Canada list. This helps us prove that we can handle different projects and deliver phenomenal results. These two recognitions are igniting our drive to further our success this 2021. We are grateful for those who support us, especially our clients. This means so much to the whole OPTASY team. What can we help you with? Contact us and let’s start collaborating!
Adrian Ababei / Feb 15'2021
Are There Any Strong Reasons Not to Use Nuxt.js? 7 Issues that Might Discourage You from Choosing It
It helps you boost your SPAs' SEO, it enables you to generate your apps both on the server-side and statically, it "spoils" you with an opinionated structure and setup... so you cannot help wondering: "Are there any reasons at all not to use Nuxt.js?" Considering its heavy load of too tempting capabilities (and I've briefly outlined just some of them), you ask yourself: "Why would I not (always) choose it over regular Vue.js for building my PWAs?" "Why would I ever bother with a... "Next.js or Nuxt.js" dilemma, for instance?" In short: what are Nuxt.js's limitations (if any), those that could make you at least doubt for a minute or two before choosing it for your future SSR projects? Well, we've run our investigation and managed to identify its 7 key weaknesses (for there are, indeed, a few). Weaknesses that we're about to share with you, so you can give yourself a well-founded answer to your question: "Why should I use Nuxt.js over Vue CLI for building an SPA?" 1. But What Is Nuxt.js More Exactly? How Does It Work? Before we go ahead and expose its weaknesses, it would be only fair to define this framework properly, right? A concise, yet accurate definition would be: It's a high-level framework that helps you build SPA and universal Vue.js apps more easily. While a more detailed one would be: It's a minimalistic Vue-based framework that simplifies the whole process of creating server-side rendered apps. It'll handle all the UI rendering of your app project, abstracting away the client code distribution and complex details of the server. From routing to asynchronous data, to middleware, it'll handle all the complex pre-coding configuration, so you can focus solely and entirely on... developing a great Vue.js web app. 2. How Can Your Project Benefit from Using Nuxt.js? 5 Strong Benefits Let's highlight some of the most "irresistible" capabilities of Nuxt.js, those that might have already made you stop and wonder: "What possibly could determine me not to use Nuxt.js... in all of my future SSR projects?" it's great for SEO: it solves all the SEO issues that single-page apps are reputed for (client-rendered content, mobile web performance, URL and routing, etc.) it generates static websites via the "generate" command; moreover, it ships with powerful features, similar to other famous static site generators like... Jekyll, for instance it provides an opinionated structure and setup automatic code-splitting it streamlines the building of server-side rendered Vue apps it helps you get the most of your universal web app without a server easy setup using the command-line with the starter template 3. Why Would You... Not Use Nuxt.js? 7 Drawbacks The very question that sparked the idea of this blog post in the first place. You'll hardly find any cons to using Nux. For this, you need to dig a bit deeper and look beyond the huge pile of online content on the common topics: Nuxt vs Next Nuxt vs Vue Nuxt Universal vs SPA N Reasons to Use Nuxt.js and so on... So, let's dig out some... disadvantages that you might want to consider before you just jump on the Nuxt bandwagon: 3.1. Common Plugins that Don't Exist or Which Aren't that Solid There are Vue plugins designed to work on the client-side only (the server just wasn't added to the "big picture" when they were being developed). So, do keep that in mind. Also, you might discover that there are common plugins and components (e.g. Vector maps, Calendar, Google maps) that, well, don't exist. When they do exist, they might not be as solid as you expected, since they're not properly maintained. 3.2. Getting Custom Libraries to Work with Nuxt with Can Be Challenging Add this issue to your list of "the biggest disadvantages to using Nuxt.js", especially if the timeline for building your Vue.js app is a tight one. Addressing it might take you more time than planned. 3.3. High Traffic Can Be Particularly Heavy on Your Server This inevitable server strain in the case of a large, high-traffic application is another reason not to use Nuxt.js. At least if this inconvenience weights heavier on your evaluation list than the pile of benefits does. 3.4. Debugging It Can Get Painful "When things break, trying to dig down into what the hell broke can be a serious pain." (source: Reddit.com) This is one of the most frequently reported issues with using Nuxt.js. An issue that becomes exponentially frustrating as your Vue app project gets more and more complex: When trouble strikes you only get a conventional error message. No clue, whatsoever, about where you should start your "investigations" in order to track down the "culprit". 3.5. There's a Relatively Small Comunity Behind It And that can only translate as: the product documentation is not that extensive fewer resources for you to dig into at need 3.6. Fetching Data on the Server Takes Place At the Page-Level Only... This means that you need to load data into a Vuex store or pass it all down via props. A source of... frustration that you should be aware of before you decide whether to use or not to use Nuxt.js. 3.7. You Need to Get "Tangled Up" in More Complex Plugins or Components If you need to build a particularly flexible Vue app — say you need to render the contents of a slot in another component — you'll have to render various JSX/functions. The END! These are the 7 main reasons to (at least) doubt whether Nuxt.js is an invariably good option for your SSR Vue project. Have you identified other drawbacks, limitations or simply small, but annoying inconveniences to using Nuxt.js? If so, feel free to share them in the comments down below, so we add them to the list! Image by Gerd Altmann from Pixabay
Adrian Ababei / Dec 18'2019
"Our goal is to have you relax and know that your tax and regulatory compliance are on cruise control." Just mind you don't... relax too much, as one of Capex CPA's clients, for you risk waking up to a brutal reality: huge payroll year-end mistakes. It's your choice: you learn from our immense mistake of hiring this Chartered Professional Accounting firm Brampton you knowingly expose your company's accounts to a level of incompetence that's... off the charts Until here, I might sound to you just like another revengeful former client of a Chartered Professional Accounting firm in Mississauga, am I right? Especially since it's one of the 5-star teams of Chartered Professional Accountants that I'm referring to. A highly reputed, high ranked Chartered Professional Accounting firm in Toronto according to its clients' reviews. Well, we've already taken the "reputation" bait, ourselves, so... we get you: The impeccable reputation forms a thick concrete wall around this team of Brampton Accountants, hiding their incompetence from the public eye. But now, let's talk facts. Real facts, shall we? Here are the reasons why we decided to fire our accountants, Capex Brampton, after no less than... 11 months, during which we "relaxed, knowing that your tax and regulatory compliance were on cruise control": 1. Capex CPA Bampton Got Our Payroll Wrong... 3 Times in a Month Just make sure you don't rely... blindly on their "experienced and professional staff", for, unfortunately, they live by this motto: Practice makes it perfect. Well, in the case of our payroll it didn't make it perfect. It was all wrong, every single time. We're talking here about a team of Chartered Professional Accountants in Toronto who's repeatedly provided us with the wrong payroll 3 times during the same month. 3 might be a magic number for some, at least in fairytales, but it did not guarantee us any... happy ending. They "stubbornly" tested our patience and just... shocked us with their incompetence, which is, we have to admit: out of this world! 2. They Overlooked the Fact that Our Funds Were Both in CAD and USD And we're talking about a Chartered Professional Accounting firm who has been having access to OPTASY's accounts for... 11 months. This was, indeed, a masterpiece of incompetence mixed with... an overdose of irresponsibility. But hey, who needs responsible and accountable... accountants, right? We just need to... "relax knowing that our tax and regulatory compliance are on a... cruise". Now, there are at least 3 different answers to our legitimate question: How could this team of Chartered Professional Accountants Mississauga, one with an irreproachable reputation, not see, while managing our accounts for 11 months, that there were 2 different currencies in there? Both CAD and USD... they're shockingly incompetent (sorry, but it seems to be the keyword of this blog post) they're dangerously negligent: they just didn't care what currencies the funds in our accounts were... USD, CAD... potato, patato they knowingly neglected even their very basic responsibilities as a team of Toronto accountants Pick any answer or pick them all. There's no wrong one here. 3. They Exposed Us to the Risk of Not Being Able to Pay Our Year-End Taxes The blunders of this Chartered Professional Accounting firm Mississauga kept piling up till we ended up with a year-end payroll filled with mistakes. We had no other chance but to quickly replace this CPA in Brampton with a professional ("truly" professional) to address all the serious issues in our accounts, so we could go ahead and pay our taxes. "Irresponsible" is a too soft term to define their work as our Chartered Professional Accountants Brampton over these 11 months. 4. They Demonstrated Their.... "Professionalism" By Claiming for More Money to Fix Their Own Mistakes "Mistake is human", right? We, too, as a Drupal firm, make mistakes when working on our clients projects. But how would you call a long sequence of mistakes? Complacency or pure incompetence? And fixing one's mistakes is... human dignity, isn't it? Not the case of Capex CPA, who's genuinely replied, when we asked them to address the issues they had caused: "5k is not enough money to do the work..." The "work" here being that of fixing the mistakes they, themselves, kept doing throughout the year as the accountants handling our business tax in Toronto. How would you call that? Dishonesty, untrustworthiness, lack of a minimal sense of responsibility for one's actions. And we're referring here to a team of accountants handling Corporate tax Toronto. Accountants! So-called "professionals" that deal with: Real Estate tax in Brampton Business Tax Brampton Corporate tax ... on behalf of their clients. To whom we gave free access to our companies' accounts. In return, after they made not one, but several mistakes while doing our bookkeeping and payroll and we dared to ask them to... clean up their mess, all we got from this "professional" accounting firm handling Corporate tax Brampton was an: "Oops!" And a: "Sorry, but there'll be an extra charge if you want us to... fix our mistakes, as well." Now, we'd appreciate your "brutally" honest answer to this question: How would you have handeled this situation if you were in our place? Would you have fired Capex CPA or not? Image by Robert DeLaRosa from Pixabay
Adrian Ababei / Dec 04'2019
Simple or custom-made? Is it a quick-to-assemble, rather “prototypical” form that you need for your website? Or a more complex, custom-made one? In a Drupal 8 Contact Forms vs Webform “debate”, which Drupal form builder best suits your data collection requirements? On one hand, you have the convenience of creating your web forms in no time: simple, straightforward, “conventional” web forms. On the other hand, you get to scan through a never-ending list of advanced options and come up with a complex, fully custom-made web form. That, of course, if you don't mind the time you need to invest in going through all those different form elements and available features and the risk of getting... overwhelmed by tons of field customization options. Ease of use vs unlimited capabilities... The convenience of getting your forms up and ready to collect user data in no time vs the chance to tailor some more advanced forms, ideally customized, carrying lots of different field values. Decisions, decision... Now, to help you decide, here's a more detailed Drupal 8 Contact Forms vs Webform comparison. Weigh each one of the 2 form modules' benefits and drawbacks, set them against your own needs and... make the choice: 1. The Contact Forms Module Being part of Drupal core, there's no need to download and install the module. Just go to Structure>Contact forms. Next, choose either to opt for the default form or to set up a new one: click the “Add contact form” button. Once in the form creation screen, enter your form's values in the predefined fields that you have there: give the form a name in the “Label” field enter the email address where all the form submissions will be sent to (most probably your site admin address) in the “Recipients” field enter your “Thank you” text in the “Message” field there; this will be the “thank you” text line your users will see once they hit the “submit/send” button in the “Redirect path”, enter the URL to the page that you want them to get forwarded to after they've submitted the forms (that if you don't want them to be redirected back to the homepage, by default) click “Save” and there you have it: a simple form, with all the basic, must-have field values, added to in no time Of course, that doesn't mean that you can't further explore the given features and maybe add a few more fields and even styling options. For instance, you could “Edit” your newly created form. Just select it in the “Contact Forms” screen and, scrolling down the options in the drop-down menu opening up, click the “Manage fields” option. Click “Add field”, then “select a field type” – Text(plain), let's say – enter the “Label” and configure its settings. Furthermore, if you want to style your form a bit, hit the “Manage form display” tab and... opt for a placeholder, for example. Next, explore the options available in the “Manage display” screen. For instance, you get to decide if you want your field label to be hidden, inline or visually hidden... In short: in a Drupal 8 Contact Forms vs Webform comparison, the first form builder will always outshine the latter when it comes to ease of use. It empowers you to set up a simple form quick and easy... 2. The Webform Module Now, if Contact Forms is a rather minimalist form builder, the Webform module is a feature-rich, powerful one. The customization features that it ships with go from email notifications to fine-grained access, from statistic collection of data to delivering results in a CSV format. From exporting data in various formats to... conditional sorting and filtering. In other words, with Webform sky is the limit when it comes to the contact form that you can create. It can go from a basic one to a highly complex, multi-page form. One made of lots of elements, advanced options for the user to select from, settings and features for you to leverage in the back-end... But, let's keep in mind that it's a contributed module, so you'll first need to download it from Drupal.org. Next, go to “Structure” and hit the “Webforms” tab. Then, click the “Add webform” button and, in the next screen popping up, give your new form a name (enter it in the “Title” field). You'll be automatically forwarded to the “Build” tab, which is where all the “magic happens”. Once you click the “Add element” button, you'll get to “swim through” a sea of lots and lots... and lots of form elements (known as “fields” in Contact forms) to choose from. Ranging from basic to really advanced ones... Let's assume that you'll want to add a “Text field” element. Click the “Add Element” button corresponding it, then scan through all the new customization options listed up in the “Add Text field element” screen opening up next... Feel free to add other elements to your webform: a “text area” maybe, an “email” element, as well... Note: do keep in mind that, once you've settled for the final fields/elements to be included in your web form, you can always change the order to get them displayed in. Just drag and drop them till they fit that predefined order in your mind... Also, you can check/mark them as “Required” and turn them into “must fill in" fields, as opposed to optional form fields. Note: feel free to edit that “Thank you” page that your webform will automatically forward users to. How? By clicking “Back to form”>"Settings”>"Confirmation” and selecting from the different options that you have there: enter your own Confirmation title (e.g. “Thank you!”) customize your Confirmation message 3. Drupal 8 Contact Forms vs Webform: Key Differences Now that we've run our spotlight over each one of these 2 form building tools, let's make an inventory of the differences that we've identified: first of all, it's obvious that the Webform module gives you more control over your web forms' design also, unlike Contact Forms, it supports conditional emails; you get to send an email to a specific user in your list based on conditions associated with the value of certain elements in your form Webform enables you to add basic logic to your web forms … it comes packed with tons of advanced options, ranging from JS effects to conditional logic, to submission handling, etc. Contact Forms, on the other hand, allows you to set up a simple contact form in the blink of an eye; you skip the tedious process of scanning through lots and lots of options, settings, and complex features Webform allows you to create your forms either in a YAML file or in its the admin-friendly UI also, Webform comes as a “cluster” of submodules – Webform REST, Honeypot, Webform Views, SMTP, Webform Encrypt, etc. – which are “responsible for” its multiple capabilities 4. In Conclusion... The conclusion of this Drupal 8 Contact Forms vs Webform “debate” is quite simple: If you need a basic form on your website and you need it built fast, go with Contact Forms. Being included in Drupal 8 adds convenience... But if you want to customize your form (and you have the time), to style it to your liking and “turbocharge” it with advanced features and options, go with Webform. It's a much more powerful and feature-rich form builder, perfectly suited for your complex requirements... Image by Tumisu from Pixabay
Adrian Ababei / Apr 24'2019
If only there was a... button that you could just press to convert your app to Android or iOS, right? Or if only a quick and easy recompilation process had been enough. Or if the “Let's just make it look similar” approach was your “winning card”... There is no such thing as “easier way” to port an Android app to iOS and vice versa. Instead, there are essential aspects to consider and to adjust your whole app porting process to, meant to stir you in the right direction: navigation design considerations/UX screen size and resolution code and essential app architecture differences 3rd party services, frameworks, extensions, and used libraries And, as you might just guess, the list is incomplete. For it includes other factors, as well, such as device support, customer and business model considerations and so on... To keep your app's architecture intact, while porting your app between Android and iOS — 2 platforms with drastically different UIs and core structures — considering the above-mentioned 5 factors becomes crucial. Therefore, let's detail them, shall we? But What Does App Porting Actually Mean? Its 4 Key Stages Let's start with some sort of definition of the whole process: By porting your mobile app you're changing or rewriting its code so that it should work on a different mobile OS than the one that it's been initially developed for. Clear enough? “How long does it take to port an Android app to iOS and vice versa?” you might ask yourself. Usually from 1 to 6 months, but it depends greatly: on your app's complexity on its core architecture on the entire ecosystem of libraries that it uses, on its design particularities on the business logic behind Speaking of which, analyzing precisely the driving business logic is as critical as it is underrated by developers who usually stick to: adapting a platform and eventually writing the needed extra code. “And what are the essential steps to take to porting my app?” Glad you asked. Here are the main stages that an effective mobile app porting process should include: analysis and plan technical assessment the porting itself intensive QA 1st Factor to Consider When You Port an Android App to iOS: Navigation Navigation is the factor that "miles" sets apart the user behavior on Android phone from the user behavior on iPhones. Here's why: Android devices are equipped with 3 different buttons: Home, Back and Multitasking button iPhones only have the home button Now, imagine tapping a multitasking button as in the Android platform: you can't get away with a simple transfer to iOS. Instead, you'll need to write the proper code for it from scratch. And there's more to navigation and to the way that it is drastically different from one platform to the other. For instance: Both horizontally and vertically displayed elements on iOS vs vertical elements only, on Android devices. Tip: if you wish your iOS app to look similar to its Android alternative, there's always the handy compromise that you can make of placing in-app tabs in the bottom of the screen. 2nd Factor to Consider: Design Considerations/UX You'll have to reconstruct your app's user interface from scratch to convert it from Android to iOS (or the other way around)! Face it, deal with it and... adapt your “battle plan” to it! There's no way around this: When it comes to UI, Android and iOS are just... worlds apart! Android taps into material design, contrasting Apple's signature flat design. Now here are the key design elements that you should pay special attention to, along with some tips on how to make their porting... smoother: icons: each platform provides you with its rich icon library dialogs font styles: San Francisco or Helvetica Neue in iOS and Roboto in Android content navigation lists object placement: flat vs hierarchical object placement text alignment: center aligned test in iOS vs left alignment of the text in Android buttons: iOS “favors” flat buttons with shadows, whereas in Android you'll find both flat and floating action buttons Word of caution: when porting apps to Android or from Android, keep in mind the pixels vs points (pt) difference when it comes to measuring icons and font sizes in the two platforms 3rd Factor to Consider: Screen Size and Resolution Briefly put: it will be conveniently smoother to port an Android app to iOS than vice versa. Why? Because in Android you have a varied collection of screen sizes and resolutions at hand, whereas in iOS it's significantly lighter. So, if it's an app porting to Android that you're planning, do take into consideration all those screen resolutions that are missing in iOS. 4th Factor to Consider: Your App's Essential Architecture And here's the right approach to adopt when you port an Android app to iOS (or vice versa) and you're preparing to build its new architecture: Identify the minimum OS version that your ported mobile app should support and set up its architecture accordingly. 5th Factor(s) to Consider: Frameworks, Libraries, Extensions, Code Your current app's “infrastructure” of libraries, extensions, 3rd party services and frameworks play a critical role. A “too critical role” not to turn it into an essential factor to consider once you decide to port your app to a new OS. Therefore, for each one of the used libraries that's not compatible for cross-platform usage you'll need to find a suitable equivalent. And it goes without saying that this calls for: A proper testing of each given framework and 3rd party library, to know for sure which ones support both OS and which ones don't. The good news is that most of them do support them both, making it smoother for you to duplicate most of your app's basic functionalities when converting it to another OS. Now when it comes to the aspect of code, the fact that the 2 platforms use different programming languages influences greatly the way you should port an Android app to iOS: Kotlin and Java are used for building Android apps, whereas Swift is used to develop iPhone apps. Therefore, you can't get away with simply compiling your app's current code into its new ported version. Note: I know what you might be thinking, that both OS support the C-code instead and so, that you could transfer your codebase to the other platform. Yet, it has already been proven that porting apps to Android from iOS calls for a complete rewriting in a different language. How long would it take you? It depends greatly on your app's feature set, on the used 3rd party libraries, complexity etc. Final Word As you can see, once you decide to create a “clone” of your iOs app for the Android platform or vice versa, you'll need to take “recompilation” out of your mind. Porting your app won't be that simple! With the 2 platforms having completely different user interfaces and core structures: careful planning and in-depth analysis (and yes, I'm thinking business logic here) becomes crucial taking into account all those elements that set these OS worlds apart (interface, navigation...) and adjusting your porting strategy accordingly is the only effective way to port an Android app to iOS or vice versa
Adrian Ababei / Jun 21'2018
Adrian Ababei / Jun 14'2018
Adrian Ababei / May 09'2018
You sure didn't expect it to take more than... 2 minutes (3 at most) to add a Drupal 8 Webform to a content type on your website and yet... What's the “catch”? Is there a "magic" tab that elopes you? Haven't you installed your Webform Drupal module properly? Or maybe it's the UI itself the real culprit for turning what should have been a "ridiculously intuitive operation into a time-consuming (and hair-pulling) one? Let us lend you a hand! Let us help you put an end to your "turmoil". But First: A Few Words About the Webform Drupal Module Surpassed in popularity only by the Views Drupal module, Webform shouldn't miss from your Drupal toolkit. For it makes the most "usable" tool to rely on for building your custom contact forms/user registration forms/surveys. A far more efficient solution than building content types leveraging the Field module or using CCK. Drupal 8 Webform Module ... ships with a whole different code base than that of its “predecessor” and makes an even more powerful, feature-richer form builder enabling you to put together: flexible rich maintainable … webforms on your Drupal 8 website Moreover, its capabilities don't limit to the forms' building and publishing, but extend to: sending confirmation forms and client notifications collecting, storing and downloading form submission data as CSV Your Current Scenario Here's how we see your current “situation” in... 4 steps: First, you installed your Drupal 8 Webform module Then you rushed to add a webform to a content type … so you went to admin/config/content/webform and checked your content type, next you saved your webform settings And then ... you “hit a blank wall”! No clue whatsoever where to go next to attach your webform to your content type... The Solution to How to Add a Webform to a Content Type Now the above screenshot's “transcription”: You navigate to your Content type's edit page: /admin/structure/types/manage/[ContentTypeName] See the “Webform” tab, on the bottom left side of the screen, right under the “Menu Settings” tab? Just go ahead and enable it and your webform will get automatically attached to that specific content type Tada! This is how you add a webform to a content type in Drupal! You just knew it couldn't be anything more complex than a two-minute job, right? How to Embed a Webform Inside a Node Content: 2 Solutions In other words: no matter which way you take it, you'll reach the same “destination”. Here are the 2 methods available to you: you go ahead and put together a custom Panel page for your node; one with the content area incorporating both the “node being viewed” and the custom block displaying your web form you leverage the Webform module's power: simply create your web form via the module's user-friendly UI and then just add your form to your “target” content type Tada... again! The END of our more or less “enlightening” little tutorial on how to add a Drupal 8 Webform to a content type on a Drupal site. Good luck with your... form building!
Adrian Ababei / Nov 30'2017