A couple of weeks ago, I wrote some thoughts
regarding my initial interest around web/mobile apps – you can read it here. I decided it was
time to dig a little deeper and talk about opening a can of worms. Before I get
into it, a note about the terminology I will use in this post that might differ
from my others. Applications, commonly abbreviated to apps, are programs people
use to accomplish tasks. The user-oriented task is that component that separates
apps from other programs that may run in the background on a device (Van Sant,
2015). For this post, “computers” will refer to desktop and laptop-type devices,
and “mobile” devices will cover smaller portable devices like smartphones and
tablets.
Okay,
so “web/mobile apps” is far from just one thing. For some, “web” means that the
application runs entirely in the device browser and for others, it means the application
relies upon an internet connection for any of its functionality. In contrast,
apps that run in the browser are native apps that are installed on the phone,
but even some of these are repackaged internet browsers that only allow access
to publisher’s app. The term “mobile” also ranges from those native apps to web
pages that use various strategies to be mobile-compatible while also serving
computers (Serrano et al.,
2013).
Native
VS web Browser
Mobile Device |
Native App |
Web (Browser) App |
Pros |
Built with the specific Operating System
and sometimes device model in mind, the app can take full advantage of
specialized device features. |
The primary compatibility focus is on browser
standards, mainly HTML5, CSS, and JavaScript allowing for use on wide range
of devices. |
|
The device-specific design allows for
better focus on user interface elements, often resulting in a better end-user
experience. |
|
Cons |
Any update to device software may mean the
app needs to be updated to match. The more specialized the app and the more
devices it is available on could translate into needing updates very often. |
Functionality is limited to what’s
available for browser access – though this has grown over the years. |
|
iOS and Android use different programming
languages for their apps and must be developed and maintained separately. |
Design can rely on a “one size fits all”
strategy leaving some devices with poorly rendered user interfaces. |
The web is only going to get bigger. It is
hard to consider that something as currently prolific as the internet had its beginnings
only 50+ years ago to share joint project information between government and
educational organizations. Consumer usage increased around 30 years ago as
CompuServe began offering email services over the Internet (Vahid &
Lysecky, 2019). Reduced electronics costs and increased mobility let a wide
range of people have access to the internet on demand. Any future I have with
IT is absolutely going to require the ability to navigate and harness the web.
Apps
that handle consumer and/or business transactions would be responsible for
passing important data over the internet. Before I do any future work in the
web/mobile app space, I will need to grow my cyber security skills or partner
with a cyber security expert. While I have an end-user’s awareness that cyber
security is essential, I currently lack the skills to implement any kind of
user or company protection in my app development.
What
about mobile vs. computer development? Over the past ten years, computer
ownership has hung steady in the mid to high 70s percent range while smartphone
ownership has risen from 20% recently, getting to the 72% volume (Alsop, 2022; Taylor, 2023). However, when looking at internet uses
between the ages of 16 and 64, mobile is the clear winner: “96.2% of people in
this group own a smartphone. 63.1% have a laptop or a computer” (Petrov, 2023,
section 11). Also, sales through mobile browsing account for 58% of e-commerce (Petrov,
2023). With mobile devices so prevalent among consumers, corporations must be
interested in matching talent to this trend. While my current and limited
experience is on computers, I am not against mobile apps and look forward to an
opportunity to get some mobile app hands on experience.
Now
that experience will come down to native vs browser app. My current
inspirations basically amount to fancy calculators, so I would not need the robust
hardware access that a native app would give me. I have some experience with HTML5
and CSS, markup languages, so browser apps play into that strength, leaving me
to delve deeper with JavaScript. If I go with trying to make a native app, like
for my Android phone, I will have to learn a new programing language. Android
Developers (n.d.) studio recommends Kotlin. I would also need to consider my
specific device for the short run while keeping in mind the functionality of
future devices for the long run. While these are not insurmountable tasks, the
browser route would be faster.
Even
then, this is all front-end considerations. A back-end architecture still runs
on other languages to process user requests and retrieve information from relevant
databases. This architecture is likely the same regardless of the front-end user’s
device. I happen to have a little experience here with building reports off of
databases using SQL connections in Microsoft’s Power BI platform. While this experience
is far from being a full database engineer, at least I have some awareness.
In keeping with the discussion started in my earlier post, how does
this wide range of web/mobile app affect my IT journey? Am I going to adjust my
skill goals to best fit within the width and breadth of web/mobile apps?
Kind of.
I’m on this path because I’m chasing my
passion and interests. Setting my goals only based on what I think can bring me
personal profit will kill that passion. However, I can try to direct my
interests, and certainly how I pursue those interests, in directions that bring
my skill set into the web/mobile app realm.
Reference
Alsop, T. (2022, July 27). Desktop/laptop
ownership among adults in the United States from 2008 to 2019. Statista. https://www.statista.com/statistics/756054/united-states-adults-desktop-laptop-ownership/
Developers. (n.d.). Develop
Android apps with Kotlin. https://developer.android.com/kotlin
Serrano, N., Hernantes, J., & Gallardo, G. (2013).
Mobile Web Apps. IEEE Software, Software, IEEE, IEEE Softw, 30(5),
22–27. https://doi.org/10.1109/MS.2013.111
Taylor, P. (2023, January
18). Smartphone penetration rate as share of the population in the United
States from 2010 to 2021. Statista. https://www.statista.com/statistics/201183/forecast-of-smartphone-penetration-in-the-us/
No comments:
Post a Comment