Jump to content
  • Advertisement

shahidmansuri

Member
  • Content count

    6
  • Joined

  • Last visited

Community Reputation

1 Neutral

1 Follower

About shahidmansuri

  • Rank
    Newbie

Personal Information

Social

  • Twitter
    shahidmansuri
  • Github
    peerbits
  • Twitch
    peerbits
  • Steam
    peerbits

Recent Profile Visitors

708 profile views
  1. If you have worked on somebody else’s project, you know how hard it is to makes sense of long blocks of complicated codes not written by you. There were many reasons Apple introduced Swift Programming Language in 2014 to replace Objective-C, Apple’s primary programming language since 1996. The main reason was getting a piece of work done without the programmer having to write long lines of codes and raise readability of the program written. For example, Swift, unlike Objective C, supports functional programming, doesn’t need instance variables and to state the type explicitly, and has the ability to map raw value to enum directly. Swift is, indeed, the iOS development language for lazy developers. Of course, Swift supports the traditional programming paradigms based on the rules of mathematics like any other languages. Sometimes, developers have no option but to use them. However, most of the time, Swift programmers can do away with fewer lines of code. I will validate my point with a few code examples: 1. Swift extensions are a life saver Long, boring codes make an already tough job of a programmer, tougher. For example, writing a program to square a number makes Swift look such an average programming language, it is not in the code example below. func square(x: Int) -> Int { return x * x } var squaredOFFive = square(x: 5) square(x:squaredOFFive) // 625 As I said, Swift makes way for smaller, concise code. In this example, the credit goes to Swift extensions. Squaring a number seems like a cakewalk. extension Int { var squared: Int { return self * self } } 5.squared // 25 5.squared.squared // 625 Did you know unlike Objective-C categories, Swift extensions do not have name? 2. Use Generics and avoid creating unnecessary functions Three functions and three variables are an overblow to write such a minuscule program. Swift doesn’t seem to add any value to the programmer in the following code example. var stringArray = ["Bob", "Bobby", "SangJoon"] var intArray = [1, 3, 4, 5, 6] var doubleArray = [1.0, 2.0, 3.0] func printStringArray(a: [String]) { for s in a { print(s) } } func printIntArray(a: [Int]) { for i in a { print(i) } } func printDoubleArray(a: [Double]) {for d in a { print(d) } } With generics, you can write the above example with a single function in Swift. func printElementFromArray<T>(a: [T]) { for element in a { print(element) } } 3. Use For loop when you want to use While loop While loops are unnecessarily long to write. A single loop to count numbers from 1 to 5 doesn’t have to be 4 lines long. var i = 0 while 5 > i { print("Count") i += 1 } For loops are a complete bliss in Swift. The example below will clear you doubts if you had any. for _ in 1...5 { print("Count") } 4. Use Guard let, not if let If let leads to hideous codes. A pyramid of doom is a big no-no in programming, at least with Swift as the language to develop iOS apps. Look at the code example to welcome new users. Those are nasty nested code. var myUsername: Double? var myPassword: Double? func userLogIn() { if let username = myUsername { if let password = myPassword { print("Welcome, \(username)"!) } } } Abolish the bad, bring the good with Guard let var myUsername: Double? var myPassword: Double? func userLogIn() { guard let username = myUsername, let password = myPassword else { return } print("Welcome, \(username)!") } 5. Exclusive functions vs dependent function You can create two mutually exclusive functions or you can connect between them if you’re looking to write smaller codes. The following code example finds the diameter of a circle using two exclusive functions. func getDiameter(radius: Double) -> Double { return radius * 2} func getRadius(diameter: Double) -> Double { return diameter / 2} getDiameter(radius: 10) // return 20 getRadius(diameter: 200) // return 100 getRadius(diameter: 600) // return 300 However, when the radius and diameter variables dependent on each other, you will make more connections, type less, make fewer typos, result in fewer bugs and thus rarer instances of programming blunders. var radius: Double = 10 var diameter: Double { get { return radius * 2} set { radius = newValue / 2} } radius // 10 diameter // 20 diameter = 1000 radius // 500 6. Enum to Type Safe “Adult”, “Child”, “Senior”. You are not supposed to do hard coding in Swift. The least, there mustn’t arise an event when you have type all these string values for each case, over and again. That’s a big no. Don’t do that, please. switch person { case "Adult": print("Pay $7") case "Child": print("Pay $3") case "Senior": print("Pay $4") default: print("You alive, bruh?") } When you write too much, you lose track and end up making mistakes. Did I mention, Swift has the ability to map raw value to enum directly. Let’s leverage on it. enum People { case adult, child, senior } var person = People.adult switch person { case .adult: print("Pay $7") case .child: print("Pay $3") case .senior: print("Pay $4") } You will never make a typographical error because “.adult”, “.child”, “.senior” will highlight themselves in the Apple’s IDE. 7. If let is hard to get by If let is something you’re going to encounter in every language. The advantage with Swift is you can skip it more often than other programming languages. For example, the code below helps users choose Twitter theme color. var userChosenColor: String? var defaultColor = "Red" var colorToUse = "" if let Color = userChosenColor { colorToUse = Color } else { colorToUse = defaultColor } I can cut the code. This is going to change your life as a programmer. var colorToUse = userChosenColor ?? defaultColor If userChosenColor returns nil, choose defaultColor (red). If not, choose userChosenColor. As simple as that. 8. Conditional Coalescing Hair spike increases your height by a couple of inches. So I tried to write a code to solve the problem, except against Swift convention I used three variable and if else in my code. Will god forgive me? var currentHeight = 185 var hasSpikyHair = true var finalHeight = 0 if hasSpikyHair { finalHeight = currentHeight + 5} else { finalHeight = currentHeight } I am a god-fearing programmer and have utmost respect for the Apple’s primary programming language. So I compacted the code above my measures. This is how it looks now. finalHeight = currentHeight + (hasSpikyHair ? 5: 0) The code above states, if hasSpikeHair is true, add 5 to the final height, if not add zero. May the force be with you. The power of Functional Programming Among many reasons Apple replaced Objective C with Swift as its primary programming languge, one was Objective C’s alienation with functional programming. I have written the program below in Swift as I would have in Objective C that lacks functional programming. The code looks lousy, doesn’t it? var newEvens = [Int]() for i in 1...10 { if i % 2 == 0 { newEvens.append(i) } } print(newEvens) // [2, 4, 6, 8, 10] A simple function will get me rid of the For loop and if let (I hate it) and will reduce the entire code to two lines. Just take a look back and see how much time you wasted writing for-loop. Let’s make the code explicit. Ingenious, isn’t it? var evens = Array(1...10).filter { $0 % 2 == 0 } print(evens) // [2, 4, 6, 8, 10] Functional Programming is prodigious. Functional Programming separates shrewd programmers from everyday programmers. Closure vs Func This is how a normal function looks like in in Swift. I mean this looks a fine piece of code. func sum(x: Int, y: Int) -> Int { return x + y } var result = sum(x: 5, y: 6) // 11 However, who wants to remember the name of the function and the variable when you can do away with remembering either a function or variable. I chose variable in this case: var sumUsingClosure: (Int, Int) -> (Int) = { $0 + $1 } sumUsingClosure(5, 6) // 11 Love your code and it is gonna love you back
  2. In fall of 2015, I joined a digital marketing agency as a content strategist. They had this incredible idea. They would list every local business in the city free of charge on their website. Each listing in addition to the business’s basic information, would include photos, business description and if possible a video. The aim was to list as many businesses as possible on the website. Meanwhile, we worked around creating a new premium brand to offer our digital marketing services under. Let’s call the brand “ninjaG”. ninjaG started pitching businesses listed on our platform. By winter, more than 300 businesses were listed on the website. However, only 3 businesses enrolled into ninjaG. The business plan failed bigtime. It was time to face repercussions. I investigated what went wrong. After interviews with almost every person in the team, I concluded that they were charging too much for the services, at some instances four times the market rates. I submitted the report to the higher management and they rejected it as ‘unreasonable’. I was furious but then I realized: ninjaG’s brand reputation couldn’t live up to the premium price tag it was asking for. We invested a considerable amount of time and manpower into content marketing in order to build the brand and now it ceases to exist. I started connecting the dots looking backwards and every reason came running to me. We, as a team, made a lot of mistakes Team got issues Either there is a communication gap between your designers, writers, and developers or what is going on your channels is out of sync with your existing content strategy. There could be so many reasons for this to happen. Your team is full of lazy people who are all about getting their piece of work done and go home. Possibly, they are a bunch of unmotivated dudes who feel their piece of work doesn’t make a difference or they think the strategy is impractical and was compiled without their counsel. Perhaps, the writing team and designers have some sort of ego problem and can’t stand each other’s stand on most project matters. Therefore, they often are on separate path when it comes to deliver the final set of contents. My ex-employer outsourced the entire design part to a team in Cincinnati while the developers’ and copywriters’ team were still here in New York. This led to a lot of confusion initially and later arguments between the teams—with each team ready to put blame on other. Frustrated, they gave up on each other. If, despite of putting a lot of resources, your content marketing efforts seem to be going nowhere, look closely at team emails and chats, which will give you a fair idea--where things went wrong. Your content lacks a style All publications, digital or physical, follow a certain set of content guidelines, including style, pitch, tone, and lots of examples, as defined in the Writing Style Guide they follow. While two of the most prominent Style Guides: Chicago Manual of Style and AP Style Guide have been in use since the time print media was in widespread, most of the companies, today, create their own Style Guide to make sure the content quality is consistent over the board, across the channels, and their online audience doesn’t feel alienated. Without a Style Guide, your content structure would be under free fall in the hands of your writing team who won’t be hesitant about experimenting with what goes on your official channels from time to time, which in the end may confuse your audience or destroy your naïve brand altogether. So make sure you have a proper style guide in place before you make them write or create a piece of content. You target wrong set of users In online world, unlike real world, people are not merely bifurcated by their age, sex, and country but by their behaviour, interest, last purchases, subscribed services, income, job profile, education background and even popularity. So, if you’re trying to sell an earphone in sub-$10 category, target young people, particularly students in their junior year who survive on pocket money. If you’re not sure, Facebook or Google Ad Manager is great place to learn: how to recognize and set target audience for a social media campaign. The rule of thumb is youth-centric and liberal content has a universal appeal on social media, provided it is published with an image or video. Moreover, casual tone and informal words in a social media post or article targeted to business community is a big no-no and vice-a-versa. Also, newer generation is more inclined to consume content on a mobile device preferably a mobile app. Investing in mobile app development for your ‘brand’ app is good bet, nevertheless. Too much text There was a time when writing a couple of long textual blogs every week was enough of a content marketing strategy. Businesses literally used to thrive on this minimalistic strategy. But the time is long gone. Plain text is long and boring and doesn’t appeal to millennials and generation Y much. They are used to rich pieces of content like images and videos. Like they say a picture is worth a thousand words and a video a thousand pictures. Text on a relevant picture is a trend that has been going around a while now and still going strong. Memes gather more hits than most content on the internet. Did you ever check weekly meme dump? Google it. Infographics is a web trend worth talking about. Even leading online publications accept and publish them. They are informative, textual and rich at the same time. Seriously, make infographics an integral part of your content marketing strategy, specifically, if you are targeting businesses. Hire a dedicated resource if you have to. They are as important as any other type of web content and lead to conversions more often. Creativity Creativity ‘Block’ is one thing but not showcasing creativity out of laziness is a bigger concern that you must address in your content creation team. Brain is a laziest part of our body. It resorts to hacks, patterns, and shortcuts to bypass an undergoing task so that it has to work less and for a shorter duration. However, creativity requires a person or a team to come up with ideas, designs, and activities previously unthought of. That means brain has to work for a longer period and has to put more efforts. Brain doesn’t want that and, thus, triggers various responses which may lead to loss of creativity in the long run or for the time being. Loss of creativity in its content creation team is the biggest loss an emerging brand can suffer from. While we can’t fight the way brain works, we can work around what triggers such instances of creativity loss. Too much work load is one trigger for it. What about others? Of course, you have to hire creative individuals to start with. I mean not every guy who works in your office is creative. Once you have the team of individuals who are creative by nature, start putting their fresh ideas into your content marketing strategy. Such team can easily come up with fresh ideas what should go in your blogs, websites, Facebook, Twitter, etc.
  3. Contrary to popular belief, McDonalds Corporations wasn’t founded by somebody named McDonald, rather it was founded by a guy who did not have an ‘M’ anywhere in his name. Richard and Maurice McDonald, the namesake behind McDonald’s chain of restaurants, are credited to the invention of a revolutionary kitchen management system called “speedy-service system” and creation the “Golden Arches” that still defines the brand today. However, a nice emblem and an invention, no matter how revolutionary, doesn’t make for a brand. Creating a brand requires a lot more persistence than most designers and investors can deliver. It takes the zeal and perseverance of Ray Kroc, a milkshake maker salesman, who knew what the brand is capable of the first time he encountered it. What your brand is called, matters “It feels so good to pronounce it, it must be serving the best burger in the town” is what people think whenever the name McDonald’s resounds in their head. I mean Kroc knew how McDonald’s operates, their kitchen assembly lines, their recipes, and everything in between. He could have easily imitated the model under a new brand and would be a success anyway. But he did not. He couldn’t come up with a name that sounded to him better than McDonald’s did. Kroc’s was, obviously, out of question for a restaurant. Concisely, it was the name that touched him when he first heard one of the brothers saying it. He was delivering an order of milkshake makers the brothers and immediately fell in love with the name. He left his job and stroke a deal to be their agent. The rest is history. Persistence is the key, you just can’t lose McDonald’s is not an overnight success story that many make us believe. Kroc mortgaged his home to pay the debts when every bank manager in the city refused him a loan. But that did not stop. In fact, it made him enter the business of real estate. He started a real estate company that was outside purview of his contract with the brother. Former McDonald’s CFO, Harry J. Sonneborn, is even quoted as saying, “we are not technically in the food business. We are in the real estate business. The only reason we sell fifteen-cent hamburgers is because they are the greatest producer of revenue, from which our tenants can pay us our rent.” You can’t make it alone, watch your back though When the McDonald brothers finally agreed to franchise the fast food joint, it was natural of Ray to persuade his wealthy friends to invest in. But that did not turn out quite that well. Being filthy rich, they weren’t quite interested in day-to-day management of the joint until and unless they were making money. This ignorance led many McDonald’s in a state of utter chaos. Some were even selling fried chicken, and wraps against the franchise agreement. Kroc soon realized that he need franchisees that actually need the money McDonalds is willing to make them earn. So he started giving loans to hardworking people who have a family to raise, would take franchising McDonald’s as an opportunity of a life time and would be more obliging towards the agreement terms. Quantity makes money; Quality makes brand When Kroc opened the first franchisee under McDonald’s Corporation in Illinois, he made sure the fast food delivery system isn’t hampering with the quality of food being delivered. However, he can’t be there at every store checking their quality. So, he created a cookbook that every franchisee must abide to. The cookbook included precisely, step-by-step how to prepare the servings in minimum time without deviating from its taste. He fixed the suppliers in each region so that the taste remains consistent everywhere. He made surprise visit to joints around the country and penalized whosoever was in disregard. He created the supply chain solution of the future Expansion is not a form of deviation, stick to the vision No matter where you’re, Detroit or London, Shanghai or Tokyo, McDonald’s looks the same, works the same, tastes the same and serves the same. It was Ray Kroc’s idea of brands and to this day not only McDonalds but most franchisees around stick to this model. All KFCs, Burger Kings, or Subways around the world are actually a part of a legacy created by the founder “Ray Kroc”. Had it not for him, McDonalds wouldn’t have been an international phenomenon it is today, but a group of a small-time fast food restaurants confined to a few American states. You may hate him or love him, but it is him who made McDonald’s the most sought-after burger joint in the world.
  4. Joe air-taps Dan’s picture to video call him. Dan picks the call and appears, in front of Joe, Dan’s life-size hologram, floating in the air. In very Sci-fi style, Joe drags the hologram, rests it on a table and pins it. The call wasn’t very different from a regular Skype video call, except it was taking place in Augmented Reality (AR) between Microsoft HoloLens, rather between PCs or Smartphones. The Head Mounted Display (HMD) wore by Joe made the audience believe that he is about to demo some upcoming Virtual Reality (VR) tech by Microsoft. The demo ended in huge applause and gave the audience a sneak-peek what video calls in future will look like. VR and AR are two futuristic technologies that are going to change the way we, humans, perceive technology. It’s natural of App developers to look at these technologies with great hope. While AR technology has been in work for a long time now and is relatively a common place in mobile apps, today, the credit of reviving VR goes to 2012’ Kickstarted project “Oculus Rift: Step Into the Game” by then unknown startup Oculus. Facebook later acquired Oculus for $2 billion and inspired (perhaps forced) Google to make inroads to VR technology. Google Vs Facebook: the next platform war Google, rather than developing a standard PC-connected VR device like Oculus Rift, decided to leverage on the well-established it controls, which led us to Google Cardboard and, later, Daydream. Google’s setting involved a VR kit consist of a HMD and a smartphone. Google released three SDKs for developing apps for cardboard on various platforms: Android, Unity Gaming, and iOS. The SDKs triggered the first set of VR applications developed for smartphones and the world hasn’t looked backwards since. Perspective Reality Cardboard’s successor Daydream, owing to only a handful of Daydream-ready phones and the VR headset Daydream View costing many times the cardboard, is far from a success. But it’s the only native VR SDK available for a mobile platform with Apple conspicuous by its absence in this field, bringing Facebook and Google on the verge of a VR supremacy war. In case you were wondering, unlike its predecessor, Daydream doesn’t support iOS, at least not yet. Is it Apple vs Google again? Both Google Tango and Apple ARKit look promising but are yet to reach their full potential. This might give rise to another platform war between the two tech giants. Apple ARKit supports every iPhone 6s and 7 out there and is a clear winner here. Google Tango at this stage supports a couple of handsets by Asus and Lenovo, neither Pixel-s nor Galaxy-ies. Nevertheless, iOS and Android app developers determined to include either of the technologies in their upcoming apps in a pursuit of futureproofing them have a lot of paths to take at least when they are thinking AR. Daydream may not look like an overly capable project Google hyped for after all; it’s the only feasible platform to develop VR apps on. There is no need to look elsewhere. VR and AR can add value to any app regardless of its category. But how to choose between these two when developing an app or a GAME? Games It’s hard to decide between the two when developing games. AR and VR both tend to blur the lines between real and virtual world. However, VR looks like the missing block in the games that are drawing up on ‘reality’. First Person Shooters (FPSs), today, are growing closer to reality with real life graphics, spine-chilling sound effects and, frantic animations. On top of that, FPSs increasingly include AI engines and physics engines to give a gamer a perception of reality. However, all the action take place in front of a screen placed at a distance from a viewer, which leads to substantial loss of quality by the time the images travels to the viewer’s eyes, broadening the gap between perception and reality. In VR, the screen inside the HMD is placed directly on viewers eyes, giving the user a perception that he is not playing the game, but in it. Spider-Man Homecoming VR Experience is a fun and thrilling first-person game if you have a capable PC and either an Oculus Rift or HTC Vive. Or else you can try VR Roller Coaster on Google Cardboard. If your game needs to interact with the real-world locations (think Pokémon Go), AR is what you need. Otherwise, VR is the way to go. Video Streaming apps For the reason described above, a piece of video content provided taken in 360-view is sure to leave your viewers awestruck. They can move around, revolve wearing the HMD and can actually see what is happening behind the action. VR doesn’t look like very great an option in this category of apps. Apple Developers looking at ARKit with great hope. Sorry! Video Calling The Skype call made on HoloLens I believe is the best rendition of Augmented Reality to date, not as a gimmick but as a technology that actually makes, otherwise, boring and dull video calls interesting and useful at the same time. AR is suitable in case of Video Calling apps because you need to see the world on either side of the call. VR will cut you on your side of call. I am not saying VR is not happening in Video Calling at all but the HoloLens demo, suddenly, makes developing a standalone video calling apps so much sense. Imagine interacting with the world around the person you’re on a call with, annotating objects of your interest and zooming them in and out while the call is still running and he is interacting with yours.
  5. Leveraging social media doesn’t mean reinventing the wheel, instead, it’s yet a powerful tool in making the businesses profitable with improved leads and conversion. The sales person is often found scrolling the social media platforms and stalking the LinkedIn groups to achieve the ultimate goal that’s getting the product or services to the right audience. Social channels open up the myriad of the options, aids in increasing customer outreach and contributes to the organization’s growth with improved sales. According to a research, “Weaving social media DNA into the sales process increases the sales outcome by 23% as opposed to traditional sales.” It implies mastering social creates great opportunities on which businesses can capitalize, and grow by leaps and bounds. Let’s shed some light on a few reasons that illustrate why social media has become the next big thing for sales: 1) Find your target audience Social media is the best place where the people of different demographics, region, and background can be easily identified. The prospect intelligence aids in profiling, which eases targeting the audience. Sales representatives can not just find out the customer base, while they can also garner more information about them, which gives a leg up in bringing quality leads. 2) Target them like never before Billions of users are using various social platforms, and there finding the right audience is a hard nut to crack for the salespeople. With the advancement of the technology, the targeting options for social media have also evolved. For instance: Facebook allows the sales rep to segment the target audience based on geography, gender, age, location, and interest so that the prospects to target get zero down to a few hundred. The paid advertising is also run to gain potential leads. 3) Nurture the relationship with them The prospects are easily accessible on social channels, which offers a golden opportunity for the sales reps by opening a line of communication between them and prospects. The interaction with the audience is an ideal tool that not only creates a relationship with the customers, while strengthening the bond with them. The interaction can be held on any topic of their interest or current issues. Additionally, feedback from the customer and answering the existing customers’ questions about their offerings make the relationship better. Don’t consider social to just reach the audience, but leverage it to engage the audience. 4) Increase your reach with real-time marketing When you reached the right audience and crafted a strong bond with them, it’s necessary to keep up with the audience and changing trends. With social media, the prospects can be approached instantly, and when the relevant post is shared in a few minutes of the latest happening, the brand gains the public recognition. The real-time marketing increases the brand awareness which in turn boosts sales. 5) Uplift the lead generation The posts shared on social platforms become a medium to interact with the existing and new prospects. The reaction of the prospects not only helps salespeople in building a following and enhancing access to the new customers, while increase website visit, click through rates and pretty more. The reaction of the audience upsurge the traffic to the website and consequently social media becomes a lead generating machine. 6) Bring more leads down the sales funnel The lead conversion is the ultimate goal of every sales rep where social media help them a ton. The social channels humanize the brand by interacting with the audience the way they like. The humanization builds the credibility and improves the trust in the brand, which in turn fuel up the conversion rate. The studies have shown that lead conversion ratio through social media marketing is comparatively higher than outbound marketing. Besides, social media provides great customer insights which make leads qualification easier and the critical information about potential leads enable the sales rep to craft their sales pitch accordingly that accelerates the conversion. Takeaway The Social Media Examiner study states that more than half of marketers who've been using social media have observed improvement in the sales. It signals social media is a key to grow the sales. It is the best platform to maximize the access to the potential customers and encourage them to buy services or products. With Social Media Mobile App development or social media page creation, the sales representatives can better drive the customers to the website and generate sales with increased conversions. Getting social is a next-Gen trend, which must be put into the sales equation.
  6. Businesses are moving at a greater pace than they ever were. The consumer habits are changing in accordance with the constant evolution in technology which has moved from mainframes to our pockets and wrists. To keep up with the changing consumer habits and to be at the bleeding edge, enterprises are trying hard to catch up. They are increasingly moving to a mobile first strategy and are investing more money than ever on enterprise app development. Enterprise mobility solutions architects are researching innovative development techniques and empowering faster development cycles, minimum development cost, minimum coding; maximum security. App developers are adopting newer development techniques and following modern development practices to fulfil the requirements of their enterprise clients. Some of those technologies, methods, and practices I have listed here: Methods 1. Rapid Mobile App Development (RMAD) Enterprise apps owing to business value they carry consumes more development cycles than consumer apps do. is based on ‘zero’ coding philosophy to shrink development time and meet mission critical business tasks. Application developed with RMAD are good-enough to distribution inside an enterprise to address an adhoc problem that can’t be addressed with the existing applications in place. RMAD is basically Rapid Application Development (RAD) extended to a mobile environment. RMAD, with little coding or by implementing methods like early prototyping and reusing software components, can be used to develop customer facing apps in addition to internal apps. RMAD development environment is web based and supports object oriented programming. 2. Bimodal IT Bimodal IT is the recent trend in enterprise app delivery. As the name suggest, in Bimodal IT, there are two parallel modes involved. One mode of app development focusses on stability another on agility. Mode 1 is traditional and sequential, emphasizing safety and accuracy. Mode 2 is exploratory and nonlinear, emphasizing agility and speed. This is expected to bridge the gap between demand and capacity, which is expected to be between five to one currently. Best Enterprise app development Practices 1. Cross-platform apps are the future of enterprise mobile app development Enterprise apps are more of a need than luxury. An employee is unlikely to complain about an app’s UI or theme color distributed by his employer the way he complains about an app developed by Facebook or Microsoft (Google apps are perfect!). Absence of native UI/UX support remains the biggest problem with cross-platform frameworks, today. They try to generate a common UI on all platforms which alienates users, who are prone to hamburger menu on Android and bottom menu on iOS. Fortunately, enterprise apps remain immune from this problem. There are number of cross-platform frameworks available in the market. The most popular is PhoneGap (owned by Adobe). Xamarin, owned by Microsoft is catching fast though. Objective-C (for iOS) or Java (for Android) can be done in C# with Xamarin, which already offers complete access to 100% of the native APIs for iOS, Android and Windows in C#. Appcelerator, Apache Cordova, Ionic and QT are other viable cross-platform tools that support desktop, web development, and mobile application development. Cross-platform = Faster development + Less Coding + Lower Cost 2. OAuth 2.0 + two-factor authentication for users’ authentication A practical tactic is to use OAuth 2.0. Many vendors support OAuth 2.0 with two-factor authentication including Azure AD, Ping, and Okta. Two-factor authentication requests a user to enter user ID and password (something you know) and a second validation, such as an OTP generated on your mobile phone (something you have) or a fingerprint (something you are). Android, iOS, Windows, and the latest web browsers all support OAuth 2.0 services. No developer should count on any other method of authentication. 3. Context Driven Testing (CDT) Context driven testing is the new form of agile testing. This kind of testing is executed when the end-users have dissimilar preference and requirements. CDT works for the mobile app which serve the need of one end-user but not the other. Let us say Microsoft Paint. Paint is an ideal application for casual graphics work But for a professional graphic designer who wants to add high-res graphics and different font size and colors may rather prefer Adobe Creative Suite. So context driven testing is built on the fact that ‘no solution is the best solution. But in this case, benefit lies with the consumers, since the final product that is approved is a user-friendly product, nonetheless several users may not agree with that as context driven testing is not a universal testing methodology and works in applications where conditions seldom change and test setups are unidentified. Conclusion Enterprises are always dynamic as they continue to succeed in a modern ecosystem dominated by mobiles and wearables. The accessibility of apps as a way of taking on business competition with agility, rapidity, as well as contemplation and proper attention is the right way ahead.
  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

Participate in the game development conversation and more when you create an account on GameDev.net!

Sign me up!