A/B testing 142
absolute units of measurement 42–44, 46
accessibility
assistive technologies 92, 98–99
design for 33, 43–44, 96
accreditation schemes 173
action research 138
Agile methodology 13, 83–88, 164
features 87–88
meaning 83–84
values 85–87
AJAX 54–56, 138
Angular 61, 64–65
aspect ratios 117, 118
assembly language 1
assistive technologies see accessibility
back-end developers 2–3, 9–11, 174
background colour 118–121
backlog 14
bar charts 129–130
base64 encoding 135
BCS
Code of Conduct 157–161
membership 79, 161
Boolean attributes 94
bootcamps 170–171, 172
Bootstrap 60
browser-based validation 94–96
browsers
evergreen 52
functionality 21
headless 153
operation 21–23, 54–56
bundlers 70
career development
future options 174–176
initial requirements 169–172
progression 172–174
chaining
in CSS 40–41
in jQuery 58–59
charts 128–131
clients 5, 7
closed questions 137
colour
background 118–121
hex values 124–125
representation 124–126
RGB/RGBA models 126
communication
with clients/users 78
importance of 7–8, 13
compilers 70
conditional statements 57
conferences 173–174
contextual inquiries 139
cookies 154
CSS (Cascading Style Sheets)
calc function 49–50
chaining classes 40–41
dialects 41–42, 70
embedded 39
extending classes 40–41
in external document 38–39
inline 39
measurement units 42–46
media queries 46, 47–49
overview 35–36
prefixes 41
principles 36–38
tables 115
toolchains 41–42
CSS-based layouts 100–106
CSSOM (CSS Object Model) 21, 38
curiosity 78–80, 169, 172
data
processing 21–22
storage 21, 143–152
visualisation 127–131
database abstraction layers 150
databases 147
NoSQL 151–152
relational 147–151
DataTables 115–116, 138, 166
dependency source trees 69
designers 2, 7, 16–17, 174
diary studies 139
document type definition (DTD) 25–26
documentation of code 8
DOM (Document Object Model) 21, 24–25, 38
virtual 52–53, 62, 66
ECMAScript 51, 62
editors 72–73, 74
empathy 5, 76, 169
end-to-end testing 153
ethics 156
BCS Code of Conduct 157–161
in research 142–143
evaluative research 141–144
flexbox layouts 106–108, 111, 166
formative assessments 141
forms 89–96
accessibility 92, 96
design decisions 140
fieldset elements 93
input 34, 90–95
labels 90, 91–93
legend elements 93
placeholders 90, 91–93
validation 93–96, 150, 165
frameworks 53, 61–67
front-end developers
career progression 172–176
context 8
daily life 162–168
ethics 142–143, 156–161
maintaining currency 7, 17, 79–80
origins of 1–2, 5
personal qualities 76–81
requirements 169–172
responsibilities 6–8, 19
role 2–5
technical skills 20, 177–178
training 170–171
front-end development 3
full-stack developers 9, 174
functional requirements 14
generative research 140–141
GIF format 120
Git/GitHub 71–72
grid layouts 46, 108–111
headings 32
headless browsers 153
hex values 124–125
HTML (HyperText Markup Language)
attributes 27–28, 30
basic structure 26–27
division element 32
document type definition 25–26
elements 27, 31–34
formatting 35–36
forms 90–96
headings 32
images 33–34
indentation 29–31
inputs 34, 90–95
lists 33
overview 23–24
span element 31, 32
SVG in 122, 123–124
tables 112–116
text styling 32
videos 34
images 116–117
colour representation 124–126
graphics formats 120, 126–127
in HTML 33–34
raster 117–121, 123, 167
scripting 122–123
SVG format 121–124
vector 121–124
imposter syndrome 81
integrated development environments (IDEs) 72, 73–74
integration testing 153–154
integrity 158–159
interviews 138
iteration 146
Java applets 51
JavaScript
bundlers 70
compilers 70
frameworks 53, 61–67
images and 122–123
libraries 53–54, 56–61
location of script 22–23
overview 51–52
package managers 69
priority over HTML/CSS 22–23
purpose 52–53
SVG and 122–123
tagging 131–132
toolchains 67, 68–70
JavaScript engine 21, 22–23
JavaScript Object Notation (JSON) 138, 143–147
JavaScript XML (JSX) 63
JPEG format 126, 167
jQuery 54, 56–60
JSFiddle 65
Kanban 87
key performance indicators (KPIs) 132
labels 90, 91–93
layouts 96–97
CSS-based 100–106
flexbox 106–108, 111, 166
grid 46, 108–111
table-based 97–100
Lazy Loading 137
Lean Startup 84
libraries 53–54, 56–61
listening skills 77
lists 33
markup language 23–24
measurements
absolute units 42–44, 46
CSS calc function 49–50
relative units 44–46
media queries 46, 47–49
meetups 79, 173–174
metadata 26
minimal viable product (MVP) 84–85
model-view-controller (MVC) format 62, 66
model-view-viewmodel (MVVM) format 66
modules 68
Multipurpose Internet Mail Extension (MIME) 124
multivariate testing 142
Node Package Manager 69
Node.js 53
non-functional requirements 14
normalisation 148
NoSQL databases 151–152
open questions 137
package managers 69
pie charts 129
pixels 43–44
placeholders 90, 91–93
points 44
polyfills 110
Portable Network Graphics (PNG) format 126
product owners 14–16, 174
professional competence 158–159
prototypes 15, 134–137, 138
public interest 157–158
pull requests 8, 19, 72
quality assurance 18–19
raster images 117–121, 167
aspect ratio 117, 118
background colour 118–121
JavaScript and 123
size 118
React 61, 62–64
Redux 64
relational databases 147–151
relative units of measurement 44–46
relevant authority, duty to 159–160
render tree 21–22
rendering engine 21–22
research
ethics 142–143
evaluative 141–144
example 134–138
generative 140–141
meaning 133
primary methods 138–139
secondary methods 139–140
resilience 80
REST (Representational State Transfer) 150–151
retrospectives 167–168
RGB/RGBA models 126
screen size 35, 45, 47–49
Scrum masters 12–14, 15, 174
Scrum methodology 12, 87
semantics 96
server logs 131–132
serverless infrastructures 84
software agents 96
software architects 11–12, 174, 176
software designers 11, 12, 176
speed testing 154, 155
sprints 87
SQL (Structured Query Language) 150
stacked bar charts 130
stand-up meetings 13, 18, 88, 163
Standard Generalized Markup Language (SGML) 25
state management patterns 137
stories 14, 87–88
summative assessments 141
SVG (Scalable Vector Graphics) 121–124
sympathy 76
systems analysts 2
tables
in CSS 115
data visualisation 127–128
in HTML 112–116
table-based layouts 97–100
teaching 175
testing
A/B 142
end-to-end 153
importance of 152–153
integration 153–154
multivariate 142
responsibility for 8, 19
speed 154, 155
testing pyramid 154–155
unit 154
user acceptance 87, 164
themes 75
toolchains
CSS 41–42
JavaScript 67, 68–70
training
accreditation 173
bootcamps 170–171, 172
costs 160
transparent backgrounds 119–120
typefaces 74–75
TypeScript 65, 177
understanding clients/users 77–78
unit testing 154
user acceptance testing 87, 164
user agent stylesheets 35, 36
user groups 138–139
users 4–5, 7
validation
browser-based 94–96
forms 93–96, 150, 165
responsibility for 8
Vanilla JavaScript 60, 61–62
vector images 121–124
version control systems 71–72
videos 34
viewports 45, 46
Vue 61, 65–67
Waterfall methodology 85–86
web analytics 131–133
web template engines 132
WebP format 126–127
websites 7
XML 143–145
YARN 69