Tag Archives: web developer

web development and programming

Back-End Development. Foundation of Digital Product.

Seeing an elegant building, we often don’t even imagine that its shape, height and loads it carries are possible due to solid and powerful foundation hidden from the field of vision. The same happens with digital products: when we open the website that downloads the history of our interactions with it in split seconds, or set the application connecting us with friends and saving our data on any device, when we do simple everyday operations like sending emails or downloading files, most of us don’t know that those interactions are possible due to back-end development which establishes the foundation for effective front-end and enables steady functionality of websites and applications.

 

A lot of internet users and clients ordering services for creating a website or an app think that web development is one-stage process. In fact it is divided into two parts: front-end and back-end development, and for people standing far from this sphere of professional activity, it might be really hard to understand the difference. In our previous articles we have already described general directions of web development and gave a closer review of front-end development issues. Today the theme we raise deals with back-end development, its essence, tools and specific nature.

 

What is back-end development?

 

In general terms, a website or dynamic web application is a number of files containing structure, design, content, and functionality. The technologies and codes that enliven a site, the area of web development which  makes the site run invisibly to users is called back-end. It consists of the server, the database, and the server-side applications. Back-end is the far side of the webpage or screen functionality; to set the analogy, it could be imagined as the brain or the engine of a website or app.

 

For example, when users navigate their web browser to http://tubikstudio.com/, they actually turn to the server where Tubik Studio website files are located and send a request to see them. It should be also noted that loading a website, users aren’t looking at that website directly on the server. The server sends the files to the web browser, which then looks at them locally, on user’s computer. In fact, back-end sets the basis on which front-end development is able to come into play. Back-end developer programs core computational logic of the system including software, website and information.

 

back end development programming

 

What are the objectives of back-end?

 

The key tasks of back-end are accessing the data that users request through the web browser or app, combining and transforming it, and returning the data in its processed form to the requester.

 

Accessing the data that users request
Any time of day or night, there’s always the chance that users will ask for data surfing the website or using the app. Taking it into consideration, back-end should be available on demand being ready to react and respond users’ requests.

 

For practical situation, let’s imagine someone launches an e-commerce startup before their website or app is prepared for a considerable number of users to log in and shop, especially in high season of celebrations like Halloween or Christmas campaigns. In this case the launch is done on shaky ground. What will happen? One day, the website or app will crash. Make no mistake, not being able to get the respond from the website, users will get angry and quickly find deals from the competitors. This is how the invisible foundation of back end directly supports not only digital product, but far more — brands, companies and clients.

 

Back-end always works with data. Developer has to understand it is vital for back-end to be developed on the basis of security practices. This is even more significant when the data interacts with secure information, such as medical, personal, or financial data.

 

Combining and transforming the data
The data that is required for website or app can come from a variety of sources called databases. The task of back-end is finding information the user needs within the databases, which contain enormous amounts of data, and then combine it in a way that provides useful and required results.

 

Imagine that someone downloads the app for travelling or opens the website aimed at this theme and wants to know how to arrive to a particular destination. The website or app will need to get access to the information from the city transport databases, taxi companies, Google Maps and so on and so forth.

 

What happens if the questions, which back-end has to respond, change over time? The structure of back-end is always optimizable which means that developers will be able to respond new requests within its code.

 

Returning the data
Eventually, as soon as back-end gathers and combines all the requested information, the data should be sent to the user. How many internet users can read the information in code produced for back-end? Perhaps, a small handful of chosen. What should others do? To solve this problem, here come the famous APIs playing the role of back-end “translators” transforming pure code into a language legible and edible for humans.

 

For the efficiency of a digital product performance, it is perfect when web designers, front-end developers and back-end developers can work together from the earliest stages of any project and have a constant feedback loop. It provides the ability to choose the best design and development solutions and techologies so that the final result could look great and operate properly.

 

What is the structure of back-end?

 

Back-end includes three parts: server, databases, and APIs.

 

The server is a computer, a device or a program whose purpose is managing network resources and data.

 

web development

 

Alternatively referred to as a databank or a datastore, and sometimes abbreviated as DB, a database is a big amount of indexed digital information. It can be searched, referenced, compared, changed or manipulated with optimal speed and minimal processing expense.

 

APIs (Application Programming Interfaces) are the tools that transport the data sent from back-end to front-end of the website or app. This data, in particular, can include elements of the layout such as buttons, menus, controls, tabs, images, copy, etc.

 

Back-end presents a combination of the databases and the applications written in a server-side language running on the servers.

 

Server-side languages

 

PHP. It is an HTML-embedded scripting language. The main aim of the language is to allow creating dynamically generated pages quickly. PHP is easy to install and deploy, it is staying competitive with lots of modern frameworks, and is the foundation for a number of content-management systems (CMS). PHP powers famous web sites and platfroms such as WordPress, Wikipedia, Facebook etc.

 

Python. It is an interpreted, object-oriented, high-level programming language with dynamic semantics. This programming language is fast, making it effective for getting things to market quickly. Python is simple; its syntax is easy-to-learn, readable and therefore reduces the cost of program maintenance. It is the oldest of the scripting languages, and often referred to as powerful and effective. Python powers famous sites such as YouTube, Google, The Washington Post etc.

 

Java. It is a programming language designed for use in the distributed environment of the Web. Java is similar to C++ language, but it is simpler to use than the latter and enforces an object-oriented programming model. It can be used to create complete applications that may run on a single computer or be distributed among servers and clients in a network. Java powers famous sites such as Twitter, Verizon, AT&T, Salesforce.

 

Ruby. It is dynamic, open source programming language with a focus on simplicity and productivity. Great for building complicated logic on the database side of a website, Ruby connects the back-end and database functionality that PHP and SQL can offer. It is characterized as the language of easy maintenance and high-traffic demands. Ruby powers famous sites such as Hulu, original version of Twitter, Living Social, Basecamp etc. Moreover, the framework Ruby on Rails for this programming language has extensive libraries which support higher level of flexibility for developer in the process of creating code for particular aims.  Here in Tubik we also use this programming language as the basis for back-end development.

 

C#. It is type-safe, object-oriented language that enables developers to build a variety of secure and robust applications that run on the .NET Framework. C# can be used to create Windows client applications, XML Web services, distribute components, client-server applications, database applications, etc. It also can be used to build iOS and Android mobile apps with the help of a cross-platform technology like Xamarin.

 

С++. It is an enhanced C language typically used for object-oriented programming. C++ is effective for complex applications also built on the .NET Framework.

 

Erlang. It is a general-purpose programming language. Erlang has built-in support which increases its level of competitiveness and distribution. It is used in several large telecommunication systems from Ericsson.

 

Server-side frameworks

 

ASP.NET. It is an open source web framework for building modern web apps and services with .NET. It creates websites based on HTML, CSS, and JavaScript that are simple, fast, and can scale to millions of users.

 

Ruby on Rails. It is an open source Ruby language framework for developing database-backed web applications. Ruby on Rails is also full-stack framework which includes everything needed to create a database-driven web application, using the Model-View-Controller pattern.

 

Django. It is a high-level Python language web framework that encourages rapid development and clean, pragmatic design. Django is also free and open source.

 

Node.js. It is a JavaScript runtime built on Chrome V8 JavaScript engine. Here are some examples of Node.js frameworks:

  • Hapi.js
  • Socket.io
  • Express.js
  • Mojito
  • Meteor
  • Derby
  • Mean.js
  • Sails.js
  • Koa.js
  • Total.js

 

Relational database management systems (RDBMS)

 

In order to work properly, every website needs a database to store its code, images, files and other data. The following relational database management systems (RDBMS) are the most popular for web-based applications:

  • MySQL
  • PostgreSQL
  • MongoDB
  • Microsoft SQL Server
  • Oracle
  • Sybase
  • SAP HANA
  • IBM DB2

 

web development

 

Let’s draw up the balance. Front-end is the part of the website or app which users see and interact with. Back-end is the engine behind the interface, allowing data validation, processing and storing.

 

Recommended reading

 

Server-Side Scripting: Back-End Web Development Technology

 

Web Development. Basics of the Job.

 

3 Web Dev Careers Decoded: Front-End vs Back-End vs Full Stack

 

The Languages and Frameworks You Should Learn in 2016

 

I Don’t Speak Your Language: Frontend vs. Backend

 

Basics of Back-End Development

web development job insights

Close Insight into Web Developer’s Craft

Being a web developer is not just writing code. It is literally breathing life into a website. It is making help, beauty, information and communication available for thousands and millions of people around the world. It is allowing stunning, stylish and user-friendly designs get live and do their best job. It is spending hours in the complicated and mysterious word of characters and signs enriching personal and professional progress. That is making wonders right from your desk and your computer.

 

Who are web developers and what do they do? One of our previous articles here in Tubik Blog has already unveiled a bit of basics on their job, let’s go further today. A lot of people conceivably count that web developers just provide technical side of building websites, but the job goes far beyond this simple definition. Professionals of this sphere are also required to analyze user’s needs to ensure that proper content, graphics and underlying structure are created and maintained to meet the goals of both users and website owners.

 

web developer tubik studio

 

What are web developer’s responsibilities?

 

Generally, all web developers can be divided into three groups. The first group focuses solely on the underlying software and databases (back-end development), while the second one works on the interface and visual design (front-end development). There’s also the third group whose representatives combine both directions (full-stack development).

 

Daily responsibilities include:

 

  • coding in one or more programming or scripting languages, such as PHP, Java, Ruby or JavaScript;
  • debugging, refactoring and optimizing existing code;
  • fixing bugs in existing projects;
  • testing new features thoroughly to ensure they perform the correct task in all cases;
  • testing performance of created web application or website;
  • building and testing Application Program Interfaces (APIs) for applications to exchange data;
  • converting written, graphic, audio and video components to compatible web formats;
  • participation in creating UX (logic and transitions) and UI (visual design performance) design in tight collaboration with designers at pre-development stages;
  • building and maintaining databases;
  • deciding on the best tools, technologies, languages and frameworks for the project;
  • planning and prototyping new applications or websites;
  • staying up to date with new trends and advancements in web development;
  • informing designers, developers and project staff for progress updates;
  • gathering requirements and wishes from clients and users.

 

The list can be continued longer and longer and amaze users and customers by its diversity.

 

programming languages fron-end

 

What should a web developer know?

 

A web developer (particularly, front-end developer) should know how to activate web content via code in a user-friendly way. This task provides a challenging aspect to website development and maintenance. The website should not be too simple for advanced users, nor should it be so intricate that the beginner is easily lost in the surfing process. This is the point on which UX/UI designers and developers are advised to support each other uniting their effort and professional knowledge and skills. Effective collaboration of these sides usually results in user-friendly efficient web product in which design finds sophisticated ways to support usability and harmony of logical and visual presentation while development sets the elegant methods to activate and maintain those solutions in live websites.

 

Hyper-Text Markup Language (HTML), JavaScript (JS) and Cascading Style Sheets (CSS) are the foundation of front-end development. HTML is the main language used to build and display a website or web application. JS provides user interfaces and enhances interactivity of a website. CSS is used for the look and design of the website in spreadsheets written in HTML. These languages are essential of building website front-end.

 

Here are some examples of client-side programming languages:

 

-HTML
-XHTML
-CSS
-JavaScript
-Flash
-Microsoft Silverlight

 

A back-end developer builds and maintains the technology that connects user-facing side of the website to its server side. The back end of a website consists of a server, an application, and a database. In an effort to make the server, application, and database communicate with each other, back-end developers use server-side languages like PHP, Java, Ruby, .NET and others to build an application, and tools like MySQL, Oracle, and SQL Server to find, save, remove or change data and send it back to the user in client-side code.

 

Back-end developers use these languages and tools to create or contribute to web applications with clean, portable, readable code. However, before writing the code, they need to collaborate with clients to understand their particular needs and wishes, then translate those into technical requirements and come up with the most efficient solution for architecting the technology.

 

Here are some examples of server-side programming languages:

-PHP
-C++
-C
-C#
-Java
-Python
-Ruby
-Erlang

 

And these are some examples of widely used tools:

-MySQL
-PostgreSQL
-MongoDB
-Microsoft SQL Server
-Oracle
-Sybase
-SAP HANA
-IBM DB2

 

web development

 

What skills are advantageous for web developers?

 

On the basis of everyday routine here in Tubik Studio, it’s easy to state that web developers have to display comprehensive diversity of technical knowledge in the spheres such as client-side languages and development, server-side languages and development, web application frameworks and relational database management systems (RDBMS), as well as experience of dealing with version control systems and understanding of the architecture of web applications, web security and encryption.

 

Let’s look closer at skills and qualities that could be beneficial for people choosing web development as their professional sphere.

 

Good communication skills

Developers should be ready to various types of communication, depending on every particular case and deciding on the most effective one:

  • Face-to-face;
  • Phone;
  • Email;
  • Online chat;
  • Social networks;
  • A variety of instant messaging apps.

 

As a web developer, even one who works remotely, they need to be able to communicate confidently and effectively with clients, users, superiors, colleagues and perhaps other developers from outsource companies.

 

Flexibility and Adaptability

Websites and back-end requirements may change over time. Clients can be inconsistent by various reasons, alter considerations or critical details, perhaps as their businesses change. It is important to be flexible and adaptable, while also setting boundaries so that the scope on the project doesn’t creep too far. It means:

 

— Having to learn new languages, frameworks, skills, etc.

— Being ready to take on extra responsibilities

— Dealing with the situations when a project you are working on is cancelled

— Adapting to the changes in your working hours

— Ability to work independently and in mixed teams

— Staying up-to-date with new tools, methods of coding, etc.

 

Priorities setting

It is an important part of any web developer’s job. Developers may not be responsible for the overall web project, but will still find themselves having to prioritize tasks and deal with other participants of the process who also have their own deadlines and parameters to keep.

 

Logical approach to problem solving

One of the hardest parts about being a web developer is addressing challenges. Before making decisions, research and thorough analysis are needed for finding out what is the problem and its roots.

 

Attention to detail

It will become a key to the kingdom for those who want to program because in huge number of cases code is long and complicated. Lack of attention and healthy pedantry has direct influence on the level of productivity as well as speed and quality of web product performance.

 

front end develoment tubik studio

 

What is a career perspective?

 

Web developers in companies or tech organizations usually start their careers as junior or entry-level developers before becoming senior or mid-level developers after around couple years or even faster, depending on abilities to learn and speed of skills practicing. Comparing to freelance projects, job in organizations often means getting involved into creating complex and serious digital products, meeting more clients, leading client meetings and working on large and longer-term projects. Senior developers might also manage junior developers.

 

After reaching advanced professional level, the next position is lead developer, technical lead or head of development. Generally, these promotions involve managing a team of web developers and contributing to the organization’s technical strategy and goals. It also means the amount of actual coding work will decrease. The next step can be a senior or even board-level position, for example Chief Technical Officer (CTO) or Technology Vice President.

 

The Bottom Line

 

When you open a web-browser, chose website and load it, the site, designed and developed properly and thoughtfully, will load instantly opening the variety of operations to your disposal. It sometimes knocks you down with its awesome layout, well-constructed pages, useful information and impressive visuals. Who is responsible for this positive experience? Sure, it is the team of designers, creating idea, logic and visual performance, content creators, planning and writing appropriate filling for the webpages, and web developers who seem to be a sort of magicians able to enliven all the stuff and bring it to the user quickly and efficiently. Web development has many ways for professional growth and self-fulfillment, and all of these directions are complicated but professionally rewarding.


Welcome to read the article about basic terms of web development and issues of front-end development

Welcome to see the designs by Tubik Studio on Dribbble and Behance

tubik studio web development

Front-End Development. From UX Design to Code.

User interface serving the aims of positive and problem-solving user experience is one of the key aspects of creating digital product, still it’s web development that enables users to get real and live surfing experiences. With the course of time, more and more businesses are going online, so there appear some loose ends that need to be cured through user experience. In business struggle, everyone wants to please their customers and engage them to return again. Today, businesses realizing the value of thought-out and professionally built user experience are able to take the best from digital technologies and products. Full-cycle UX design gets its live version via web and mobile development transfroming step by step from subtle idea to real digital product.

 

Getting down to cases, online businesses are all about user experiences and of course the products and services they are selling. Have you seen websites like Amazon, eBay, AliExpress? They are convenient and helpful for their users even being huge websites that offer millions of products and thousands of services. The value of thought-out UX and efficient UI is irreplaceable. How could this result be achieved? This is the point when the power of front-end development comes into play to not just enhance the look and feel of website but also take the major role in increasing the level of user experience.

 

Tubik Studio design team

 

What is front-end?

 

All websites consist of structure, data, design, content, and functionality. Creating user-facing functionality is the task of front-end developer. Using a combination of markup languages, design, client-side scripts and frameworks, they create everything that users see and interact with: content, layout, and functional elements.

 

Three main parts of every website are: the client, the database, the server. The client is simply the web browser a person is using to load a site, and it’s where client-side technology is unpacked and processed. In a general way, a server is a computer, a device or a program that is dedicated to managing network resources and data. The server is at a remote location anywhere, it is holding data, running back-end of a website, processing requests, and sending response to the browser. The client is anywhere the users are loading a site: mobile devices, laptops, or desktop computers. Server-side scripting is executed by a web server; client-side scripting is executed by a web browser.

 

front end develoment tubik studio

 

Let’s have a closer look at this process.

 

The Server — this part of website is responsible for holding data, running the website’s back-end architecture, processing requests, and sending response to the browser.

 

The Client — requests pages from the Server, and displays them to the The User. In most cases, the client is a web browser.

 

The User — uses the Client in order to surf the web, fill in forms, watch videos online, in other words and interact with webpage.

 

web development server

 

To see how it works in practice, let’s take the flow of interactions with Tubik website for example.

 

The User opens his/her web browser (the Client), then loads http://tubikstudio.com/. The Client (on the behalf of the User) sends a request to http://tubikstudio.com/ (the Server), for our home page. The Server then acknowledges the request, and replies the client with some meta-data (called headers), followed by the page’s source. The Client receives the page’s source and renders it into a human viewable website. The User types «Case Study» into the search field, and presses ‘Enter’. The Client submits that data to the Server. The Server processes the data, and replies with a page matching the search results. The Client, once again, renders that page for the User to view.

 

Processes running in web browser are the following: when the page is in process of loading, scripts are embedded within and interact with the HTML of a site, selecting elements of it, then manipulating those elements to provide an interactive experience. Next, scripts interact with a CSS file that styles the way the page looks. It dictates what work the server-side code will accomplish and returns data that’s pulled from the site in a way that’s readable by the browser.

 

For example, when we open home page of Tubik Studio website, the back-end is built to pull specific data from the database to Client, while front-end scripts render this data into readable for human view webpage.

 

Front-end languages

 

Widespread client-side languages which front-end developers use regularly and have to know include:

 

JavaScript: With its frameworks and libraries, it’s the core of front-end development, and beyond. It is called the first client-side language and is still the most common client-side script on the web.

 

HTML: Every front-end developer has to know this language. It dictates a site’s organization and content and all interaction. HTML elements can annotate footers, headers, how text is displayed , how media and images are appeared, and more.

 

CSS: Cascading style sheets (CSS) is broken into modules and comprises the code for every graphic element—from backgrounds to font—that make up the look and feel of a website.

 

programming languages fron-end

 

Front-end frameworks

 

A framework is a hierarchical directory that encapsulates shared resources, such as a dynamic shared library, nib files, image files, localized strings, header files, and reference documentation in a single package. Here are some popular frameworks that are usually used.

 

AngularJS: This framework and several other JS frameworks, like Backbone.js, Ember.js, Express.js or ReactJS demonstrate the capabilities of JavaScript.

 

jQuery: It is a fast, small, JS object library that streamlines how JavaScript behaves across different browsers.

 

Bootstrap: This leading mobile-first framework includes HTML, CSS, and JavaScript to facilitate rapid responsive app development. With Bootstrap, website is compatible with all modern browsers and looks great on any size screen, from tablets to phones, from laptops to desktop computers.

 

Foundation: Responsive front-end framework is used by sites like Facebook, Yahoo!, and eBay.

 

Semantic UI: It is a development framework that helps create beautiful, responsive layouts using human-friendly HTML.

 

Yeoman: It is a generic scaffolding system allowing creating of any kind of app.

 

Pure.css: It is the set of small, responsive CSS modules that you can use in every web project.

 

Skeleton.css: As Skeleton’s developers stated: “A dead simple, responsive boilerplate.” It is the set of small and easy, responsive CSS modules that can be used in every web project.

 

web development framework

 

The next posts about web development are coming soon for those who are interested and in them we are going to tell you more details about different aspects of the job: the closest ones will tell about specific features and tools for back-end, web developers work flow, and trends for front-end development. Don’t miss!


Welcome to read the article about basic terms and tools of web development

Welcome to see the designs by Tubik Studio on Dribbble and Behance

front end develoment tubik studio

Web Development. Basics of the Job.

It seems that there are crowds of web developers here and there, still the job is marked among those which are always in demand. The growing number and diversity of professionals doesn’t set the scarcity of places on the labor market in the sphere. And the reason is really simple: people around the world open more and more opportunities provided by modern websites for all the spheres of professional and personal activities.

 

“Everyone wants a website,” says Brandon Swift, co-founder of Santa Barbara-based Volt Commerce. “As a web developer, you’ll never be short on work. I mean never!” And that seems to be pure truth: total employment in this sphere is projected to grow 27 percent through 2024, three times faster than average for all occupations according to the U.S. Bureau of Labor Statistics (BLS). British resource National Career Service also provides statistics showing the dynamic growth and it is forecasted to continue.

 

statistics web development jobs

 

So, naturally there are more and more people who start their path or broaden professional horizons in the sphere as well as growing number of customers who need to get into basics of the job for understanding the process and setting effective collaboration  with web designers and developers. 

 

Nowadays, average internet users often confuse web design with web development, but there is a huge difference between the two. That is why we have decided to start the series of posts in Tubik Blog unveiling basic and specific aspects of web development for all those who are interested in the theme. Today let’s start talking about the basics.

 

What is web development?

 

Web development is the process of building a website or web application from scratch which includes creating custom code to accommodate unique needs, developing everything from the site layout to features and functions on the webpage or web application.

 

Typically, web developer’s primary task is building reliable and high performing website or web application. What should we get as the basis of web development process? First of all, it is necessary to know main areas of web development and specificity of each.

 

web development

 

What are main areas of web development?

 

Client-side scripting — types of codes that execute in a web browser and determine what users will see when they open a website.

 

Server-side scripting — types of codes that execute on a web server and produce a response customized for each user’s request to the website.

 

Database technology — software applications which allow defying, creating, querying, updating, and administering databases.

 

In point of fact, in large-scale web projects these parts of web development are often delegated to multiple web developers for higher workflow speed and productivity: one programmer may focus on server side of a website while another focuses on the client side to add style and functionality to the website or web application.

 

Considering the above-mentioned issues, let’s take a closer look on what languages and tools web programmers should know in each of these fields.

 

What is used for web development process?

 

Codes of client-side scripting execute themselves within the browser of a user’s computer, like storing user data in cookies, simple flash games, web applications or other. Client-side development is done almost exclusively on JavaScript in addition to basic HTML and CSS code.

 

Here are some examples of client-side programming languages:

  • HTML
  • XHTML
  • CSS
  • JavaScript
  • Flash
  • Microsoft Silverlight

 

Server-side scripting is the type of coding used by web developers to build reliable user-server connection and vice versa. A web browser’s storage is limited by the end user’s computer, so websites need to host the files and images that make the site work in a database on a web server. This area of web development includes building the framework that allows the database on the web server to communicate with the web browser of the end user’s computer. Need to notice, server-side code is also more secure, because using a website the user has no direct access to source code and proprietary databases.

 

Here are some examples of server-side programming languages:

  • PHP
  • C++
  • C
  • C#
  • Java
  • Python
  • Ruby
  • Erlang

 

In order to work properly, every website needs a database to store its code, images, files and other data. These relational database management systems (RDBMS) are the most popular for web-based applications:

  • MySQL
  • PostgreSQL
  • MongoDB
  • Microsoft SQL Server
  • Oracle
  • Sybase
  • SAP HANA
  • IBM DB2

 

web development and programming

 

Bottom line

 

In a broad sense, web development includes web design, but also includes web content development, client and server side scripting, server and configurations security as well as e-commerce application. Web development is of paramount importance to any new or established business. Website is a useful method of presenting the list of the services and products offered by someone to the wide and diverse audience of internet users, it will provide understanding why these products are relevant and even necessary for them to buy or use, and presenting the company’s qualities setting it apart from competitors.

 

Web development has also impacted personal relations. Websites are no longer simply tools for work or e-commerce, but serve more broadly for communication and social networking. Websites such as Facebook, Twitter, Instagram provide users with a platform to communicate and organizations with a more personal and interactive way to engage the public.

 

If you are interested to read more about web development, don’t miss our next post which will be devoted to client-side scripting. It is going contain detailed descriptions of this area and show how front-end functions. Join in!