Charity Digital – Themes – The basics of web development

Captain Sir Tom Moore was certainly the type to get up and go. A World War II veteran, he has of course risen to fame in the past year by raising over £ 30million for charity on a sponsored walk through his backyard during the first COVID-19 lockdown.

However, while Moore may have made fundraising easy, the reality is that 2020 has been an extremely difficult year for most charities in the industry.

Social distancing restrictions and the prospect that working from home is here to stay mean that charities need professional, practical websites that can support all of their public activities now and in the future – or they may have. struggling to survive.

This means that charities need web developers to help create functional and responsive websites that can adapt to the needs of the charity. A website allows a charity to communicate directly with its supporters. Charities can publish news and newsletters, solicit help, and sell merchandise.

However, charity websites need to be as stylish and professional as any commercial website – it is, after all, the “face” that will be seen by more people than any other form of public contact. People will form their first impressions of charity by what they see online.

Unsurprisingly, perhaps, skillful professionalism requires skillful professionals, and a modern website requires web developers with a range of skills if a charity’s website is to reach its full potential.

Web development: the basics

Web development can encompass a wide range of skills and competencies.

At the heart is an understanding of the HTML markup language, the foundation upon which all websites are ultimately based. It’s easy to learn, but hard to master.

However, knowledge of HTML alone is often not enough. Modern websites also require an understanding of Cascading Style Sheets (CSS) and JavaScript.

CSS governs the presentation, allowing a web developer to apply a consistent design and style throughout the website. In addition, CSS also governs the size of the text and is therefore an essential part of ensuring accessibility for the elderly and others who may have poor eyesight.

JavaScript, on the other hand, is more complex but adds client-side scripts. That is, scripts that run in the browsers of users’ PCs, tablets and smartphones. It adds interactivity and can be used, for example, to validate information entered into a web form before submission.

These are all front-end tools and scripts, which run in the browsers of website visitors. But there are other tools and languages ​​that can run on an organization’s servers that are even more powerful.

Heavy lifting

Server-side scripting languages ​​can add customization that runs independent of the website visitor’s hardware and browser, helping to improve compatibility – as its execution is independent of any browser technology – as well as the experience. overall.

As the name suggests, server side scripting languages ​​run on the web server and make websites more dynamic and secure. It retrieves large files from databases, with dynamic pages loaded in response to requests.

Another advantage of server-side scripting is that pages can load quickly, a factor that will improve search engine rankings. However, there is a cost associated with processing web pages on the server, rather than in the website visitor’s browser, which can add up if the traffic is heavy.

Today, PHP and Ruby are arguably the most commonly used server-side scripting languages ​​deployed by web developers, although Node.js, a server-side implementation of JavaScript, has become popular in high-end online applications. that require performance.

For automation and more powerful web applications, Python is also recommended, as it can do some of the heavy lifting that could have been done with Java in the past. JavaScript and Java should not be confused. While JavaScript is quite accessible to the average web developer, Java alone falls into a category of complexity and is no longer required for all but the most high-end web development.

Still, if an organization wants to dive into analytics, Python can also offer libraries that the more advanced Python developer can use to dive into data science.

Web design versus web development

Web development should not be confused with web design. Web design is about the creative aspect of the website, such as logos, styling, and consistency. Web design should guide the web developer, but as a discipline it is considerably less technical.

A good front-end web developer will have skills not only in HTML, but also in CSS and JavaScript, while a good knowledge of Python and PHP is highly desirable.

Content management systems (CMS), such as WordPress, Joomla, or Drupal, allow non-developers to build and update websites, generating their own code, but they still often need a developer. Web to narrow down aspects of the most basic website.

A CMS can help do all of the work necessary to ensure that a website is mobile-friendly – adaptable to the smaller screen sizes of smartphones and tablets – and that security needs to be covered as well.

Protection racket

Safety is an essential and twofold consideration.

First, if the website has links to backend systems that help run the organization (especially systems with personal information subject to GDPR), the website has a potential weakness that could be exploited.

Second, if the charity is using the website to sell merchandise, it should be wary of “magecart” security exploits. These take advantage of security weaknesses that can arise in e-commerce website plugins, allowing attackers to surreptitiously download compromised JavaScript code capable of reading and exfiltrating personal, debit, and card information. buyers credit.

This security risk should not be underestimated: thousands of organizations have been the victims of magecart attacks, including British Airways and TicketMaster.

Many organizations alleviate this potential headache by outsourcing either their payment function or their entire e-commerce service to a third party. Another key mitigation is to ensure that all software is kept up to date at all times.

For small charities, outsourcing web development can be a cost effective alternative to hiring an office full of developers.

Service companies will be able to provide packages, such as charity website creation and maintenance, as well as security management, for a fixed monthly fee which will depend on the complexity of the requirement.

There are also many service companies that focus on the charitable sector and therefore can create packages to suit your organization.

This is because there are also companies that offer different types of charity focused platforms on which the website, fundraising and other functions can be performed.

Don’t feel like doing the online fundraising directly? Try something like Golden Giving, a nonprofit platform that can support a wide range of fundraising activities, or Wonderful, which doesn’t take a single penny in transaction fees.

James S. Joseph