Posts Tagged ‘Web Design’

Personal Interlude

Posted on:

Things have been very busy out­side of the day job (and at the day job as well, but who cares about that stuff?).  I put most of the fin­ish­ing touches on a new web­site for Rudi Dornemann last week.  I’ll let you know here when he signs off on the site, and I’ll try and write up a post­mortem at that point.  It was a fun project, involv­ing updat­ing an older design of mine for a dif­fer­ent sort of website.

I final­ized my art­work for the Strange Horizons dona­tion card over the week­end as well. I will let you know how to get that spe­cial Roundbottom art when the dona­tion drive begins. I’m really pleased with how the image turned out.  The poor lit­tle gob!

I’ve also put nearly every book I own into boxes for the impend­ing move to our new place (only six blocks away from the cur­rent house, but $300 a month cheaper).

Blogging will be lighter over the com­ing two weeks as I’m in the process of fin­ish­ing up a cou­ple of free­lance projects while pack­ing for the move. I cur­rently have no projects sched­uled for June or July, so if you are look­ing for a designer, and want to dis­cuss the pos­si­bil­ity of hir­ing me, you know how to reach me.  An awe­some new web­site would be a good invest­ment of your gov­ern­ment stim­u­lus check!

I will be on vaca­tion in Oregon for the sec­ond week of June, but I can still work on a project for the lat­ter half of the month. If noth­ing turns up, I’ll put that time into build­ing the new Roundbottom site to go with the relaunch, and in gen­eral, just doing more photography.

Have you missed some of the recent Daily Photos?  This link will take you to the tag that I file all the daily images under.  I don’t usu­ally post images over the week­end, but some­times I get excited about shar­ing the work I’ve done and upload it ear­lier.   On my list of things to do is to cre­ate a feed specif­i­cally for just the daily pho­tos so that I can offer up my blog as a photo blog and get it listed in the direc­to­ries for those.

One last excit­ing thing.  We pur­chased a 24 inch LCD for the office com­puter over the week­end.  It is mighty.  So mighty that it gives me eye strain to work on it cur­rently.  I’ve had to dim down its light as much as pos­si­ble just to han­dle look­ing at it for more than 20 min­utes.  But I opened up Photoshop first thing after installing it. Oh boy, the room.  The room…  Unfortunately, the machine it is hooked up to is not pow­er­ful enough to run the Age of Conan MMOG I just bought, which means I do not have a com­puter that can run it period.  Perhaps a video card upgrade will solve my prob­lem, but that is $100+ I don’t want to spend after drop­ping so much on the new mon­i­tor.  Luckily, I didn’t really pay for the Conan game, but traded in a ton of stuff for it at GameStop.  All part of slim­ming down my pos­ses­sions for the move.  The next step in this is hold­ing a garage sale this com­ing weekend.

CSS Tutorial: Cleaning Up Footer Code

Posted on:

For my first web design/​css tuto­r­ial, I wanted to talk about a prob­lem that I had, and how I solved it. This is pretty sim­ple stuff, but it took me a while to grasp the idea, so I thought I’d share it with the half-​​dozen of you who do this sort of work.

Below is a screen cap­ture of a footer of a blog I’m design­ing for a client. Typically, I like to include the nav­i­ga­tion redun­dantly at the bot­tom of a page so that, rather than scrolling back to the header, a user can jump to wher­ever they want to go next. You’ll see this kind of basic redun­dant nav­i­ga­tion in a lot of places.

The Footer of a Client\'s Website

The lit­tle line between links is called a pipe, and as a sep­a­ra­tor, it is pretty com­mon. It’s just a sim­ple lit­tle visual ele­ment to help delin­eate between the nav items. The trou­ble comes in when you want to use these in com­bi­na­tion with dynam­i­cally gen­er­ated code from WordPress.

The List Code

First off, nav­i­ga­tions should pretty much always be a list in html. That’s what lists are for, and styling them is great and easy. And, coin­ci­den­tally, WordPress returns a call for pages with list code. So the HTML for this list of links looks like this:

<ul>
<li><a href="#" title="Home">Home</a></li>
<li><a href="#" title="Blog">Blog</a></li>
<li><a href="#" title="Fiction">Fiction</a></li>
<li><a href="#" title="Other Writing">Other Writing</a></li>
<li><a href="#" title="About Rudi">About Rudi</a></li
</ul>

I stripped out some classes that WordPress adds auto­mat­i­cally, as I don’t need them here. All of the above is con­tained in a div with an id of #footer. So, note that nowhere in that code is the pipe ite­self. That’s because I am adding the pipe with CSS. You can add char­ac­ters with CSS, you ask? Yep!

The CSS

#footer ul {list-style-type:none; position:absolute;
            left:300px; top:27px; font-size:16px;}
#footer ul li {display:inline; color:#e3bd8e;}
#footer ul li:after {content:" |";}

So what’s going on here? First of all, I am using Eric Meyer’s CSS Reset above this, so all of that default padding and styling on a list has been stripped. This means the only styling that hap­pens is the styling you want, and it cre­ates a base­line between browsers. It really makes my job easier.

So we’re styling the list itself to have no bul­lets, and we’re posi­tion­ing it absolutely within the con­tainer. You don’t have to do that, but I just found it eas­ier for my needs in this par­tic­u­lar footer. Next, I wanted the list all on one line, so I added display:inline. Finally, I’m using the pseudo class :after and the prop­erty con­tent to insert a space and the pipe after each item on the list. Say my client wants these items sep­a­rated instead by an aster­isk? Easy enough to change across the entire site with that one line.

Pseudo classes aren’t some­thing I often use, so the next thing I wanted to do tripped me up. The code above will add a pipe after each li tag, but I don’t want one on the last one. There’s no rea­son for it. How in the world do I do that? I know how to use the :last-​​child pseudo class, but it alone wouldn’t let me remove the pipe. Turns out, you can and should chain together pesudo classes

#footer ul li:last-child:after {content:" ";}

I prob­a­bly could have set that to content:none as well, now that I think about it. But a plain space in my case works just fine.

So there you have it. The moral of the story? Chain pseudo classes together to get what you want. Any questions?

Related Links:

5 Reasons Why SF/​F Author Websites should be (more) standards-​​based

Posted on:

I am often asked to com­ment on the web designs of friends and asso­ciates. It’s a tricky sit­u­a­tion for me. Regardless of the visual design, which is usu­ally fine, often, I find prob­lems under­neath the hood that are dif­fi­cult to explain. What I find are sites designed with tables-​​based lay­outs, using older HTML tech­niques. Today, I’d like to make the case for why you should dis­card that old way of design and move to standards-​​compliant design.

1. Accessibility

A web design done with stan­dards in mind is broadly acces­si­ble. I have noticed that the SF/​F fan­dom is par­tic­u­larly accept­ing of those with hand­i­caps and dis­abil­i­ties, but many SF-​​related web­sites do not take these fans into con­sid­er­a­tion. A prop­erly designed web site takes makes allowances for the use of screen read­ers and other acces­si­bil­ity tools. Tables based designs make a mess of this. Accessibility is a small part of standards-​​based designs, based on the num­ber of peo­ple that it effects. But do you really want to run the risk of alien­at­ing any poten­tial fans?

A graphical depiction of a very simple css documentImage via Wikipedia

2. Ease of Maintenance

With css/​xhtml-​​based designs, the con­tent is sep­a­rated (mostly) from the pre­sen­ta­tion. Here’s what this means: say you have a new book com­ing out that you want to pro­mote. If your site is built with old tech­niques, updat­ing your design involves a com­plete tear­down and rebuild. However, if your site has been built with stan­dards, you could sim­ply replace the stylesheet and have an entirely new design that reflects your pri­mary project. In gen­eral, these web­sites are very easy to make changes for, as far as pre­sen­ta­tion is con­cerned. Don’t like that link color? Edit the CSS, and it’ll change across the site.

3. SEO Implications

A standards-​​based design takes search engine opti­miza­tion into account straight away. Proper page struc­ture, even if it is not per­ceived by humans using browsers, will be picked up by index­ing ser­vices. Building your site with stan­dards in mind does not auto­mat­i­cally mean higher rank­ings, but it cer­tainly helps.

4. Less Bandwidth Intense

Standards-​​based designs are lean and quick. CSS is down­loaded once, whereas in the old way, the pre­sen­ta­tion would be down­loaded over and over again. Your file sizes are all-​​around smaller, which means a faster web­site, and hap­pier visitors.

5. Your web­site is like the cover of a book.

A standards-​​based design can look good or it can look bad. But more often than not, they look pretty good. Your web­site is like a book cover. Whether you know it or not, poten­tial read­ers are eval­u­at­ing whether or not to pick up your work based on your web­site. They may not even know it–it may just be sub­con­cious. But good design facil­i­tates the pre­sen­ta­tion of infor­ma­tion, and you are in the busi­ness of sell­ing that. Your web­site should reflect a level of pro­fes­sion­al­ism at least on par to the cover design of your books. Don’t com­mit a sin on the level of the SFWA web­site, please.

Afterword

Despite all this, I am not a stan­dard­sista. Sometimes to sat­isfy the desires of your client, you need to bend the stan­dards a lit­tle, and I still sleep okay when I have to do so. Like any­thing, you can go over­board with the idea of standards-​​based design. But in gen­eral, the above are some very good rea­sons for hir­ing a pro­fes­sional designer who is famil­iar with stan­dards to pro­vide your site–or if you are a do-​​it-​​yourself-​​er, pick­ing up some books on XHTML and CSS. This is the part where I plug me. You already know I do web design, but if you’re inter­ested in learn­ing more about my client process, visit my free­lance infor­ma­tion page.

House Warming

Posted on:

Hello and wel­come to the new Jeremiah Tolbert​.com. Over the com­ing months, as I can spare the time, I will be rolling out new fea­tures. Currently, the port­fo­lio and pho­tog­ra­phy sec­tions need work, and the newslet­ter and the free­lance pages have zero on them. Everything else should be in work­ing order, at least until I decide to try some­thing entirely new and weird.

Please, look around, and let me know what you like, don’t like, what works, and what looks buggy. I value any and all feed­back. If you’re see­ing this on LJ, I would appre­ci­ate you, just this once, com­ing over to the site itself and leav­ing a com­ment. I need to make sure the com­ment sys­tem is work­ing well. Your com­ment might go imme­di­ately into mod­er­a­tion, but that just helps me fig­ure things out if it does.

Thanks for your patience as I work out the kinks and get things run­ning more smoothly. I think you are going to find that I’m tak­ing my blog­ging game to a whole new level with this release.

Making FlickrRSS Work for Me

Posted on:

My goal with this new site is to not only to design a very clean, beau­ti­ful site, but to also show­case some of the nice effects that are pos­si­ble with javascript libraries like jQuery (and teach myself how to effec­tively use them in the process). Last night, I worked for over 6 hours sim­ply get­ting one small sec­tion of the front page to work the way that I want it to. My rule for myself was sim­ple: I would accept no com­pro­mise from the design that I drew in Photoshop–unless IE 6 and its crappy ren­der­ing forced me to, which it did on the hor­i­zon­tal tab nav­i­ga­tion. Bad browser! BAD! No biscuit.

So, if it’s still work­ing, you should see a big image from flickr. You hover over that image, and you should see the image title and the descrip­tion from flickr slide up onto the image, and if you mouse-​​off, the details will float back down.

The ani­ma­tion and hover effect is cre­ated with jQuery and a plu­gin for jQuery called hov­er­In­tent. I had to add hov­er­In­tent because I wanted a delay between mou­s­ing off the image and the slide-​​down. Doing this part, includ­ing writ­ing the CSS and javascript, was actu­ally only about an hour’s worth of cod­ing at the most, and the only rea­son it took that long was because I screwed up includ­ing the script, and then I wanted that delay and had to go find out how to do that with hoverIntent.

Where things really got sticky was fig­ur­ing out how to get the data from Flickr onto my page.

Here’s why: there are basi­cally two plu­g­ins that you can use with WordPress to talk to Flickr. Unfortunately, nei­ther one did exactly what I wanted. After play­ing with Falbum and FlickrRSS, I decided FlickrRSS was going to be the eas­i­est for me to beat into sub­mis­sion. Important caveat: WordPress runs on PHP. I’ve worked with PHP off and on for the last 8 years, but I have never really learned it. I am NOT a programmer–I am a designer. A pro­gram­mer prob­a­bly could have writ­ten the code to do what I wanted to do here in about an hour. If a client had asked me to do this kind of mod­i­fi­ca­tion, I would have con­tracted out the work to an expert. But I’m cheap and I took it as a learn­ing oppor­tu­nity, so I beat my head on it instead. So, mov­ing on:

The first prob­lem I had was that by default, FlickrRSS could dis­play images, but had no options for dis­play­ing the title of the image and the descrip­tion from flickr. My design plans called for this data. So first, I had to dig around in the Flickr API, look through the dif­fer­ent feed types ‚and look at the source code of my flickr RSS feed to see if it pro­vided what I needed. It did, but unfor­tu­nately, the area of the feed that pro­vided that also pro­vided a damned “JeremyT has posted a photo:” and an img tag includ­ing the image before even run­ning the descrip­tion. This infor­ma­tion needed to be stripped. It was pretty easy for me to fig­ure out how to write the PHP to start dis­play­ing that infor­ma­tion, and even style it. But I needed to fig­ure out how to take that infor­ma­tion and strip out the img tag and the “JeremyT has posted a photo:” string. This took me down the rab­bit hole of PHP func­tions and oper­a­tors and all a bunch of stuff that I under­stand at a basic level due to all the work I’ve put into Actionscript at the day job. Eventually, through Google-​​fu, I found str_​replace, and that worked fine. There’s prob­a­bly a bet­ter func­tion, but I couldn’t find it. I also used strip­tags, and pro­vided a list of tags that were okay. Paragraph, bold, ital­ics, and so on.

I describe it, and it sounds so easy, but the con­stant tweak­ing, the upload­ing and test­ing, then test­ing again–that’s what too so long. And my solu­tion involved hack­ing the code in such a way that my desired effect is going to hap­pen for every image I try and dis­play any­where. I will take advan­tage of this and pro­vide more pop­ups, or I’ll use CSS to hide that infor­ma­tion. I just need to mod­ify some IDs into classes and it’ll be more flexible.

So, one tech­ni­cal hur­dle overcome–three hun­dred to go! God help me, this pro­gram stuff is actu­ally kind of fun. JQuery is espe­cially cool.

New Client Site: Susan Groppi

Posted on:

My March project is now live.  There are still a few bugs I need to squash here and there, and I think Susan is still kick­ing the tires a bit, but it’s no longer a secret.  Let me know if you find any prob­lems.
I’m pretty happy with how this one turned out. Be sure to check all the pages. They’re all a lit­tle dif­fer­ent, and the blog is com­pletely dif­fer­ent than the rest.

10 Things Your Website Should Have if You Are An Author

Posted on:

1. Your own domain name.

In this day an age, a domain costs almost noth­ing, and host­ing, not much more. I charge $15 a year for a domain and $20 a year for host­ing for my clients, and there might be cheaper (but less feature-​​rich) host­ing avail­able out there. Sff​.net might have been cool a decade ago, but it’s not now. It just looks unpro­fes­sional. Buy a domain, and if you can, make it your full pub­lish­ing name. If you can’t, don’t get too clever, by which I mean don’t pick some­thing you’re going to hate 10 years from now. Domain names can be changed, but you should really try to avoid it, to pre­serve your rat­ings in the search engines.

2. A biog­ra­phy and bib­li­og­ra­phy with lots and lots of links.

If some­one is com­ing to your web­site, it is likely that they want to know who you are, and what else you’ve done. Don’t be stingy here. Don’t pub­li­cize any­thing you’re embar­rassed of, such as that mpreg slash fic that you wrote late one night while drunk, but def­i­nitely include your bib­li­og­ra­phy, and if your story is avail­able online, for free in a webzine or for sale in some form, link to it. If you don’t, you’re miss­ing a chance for a sale to a poten­tial fan.

3. A News Blog with an RSS feed. Or a newslet­ter. Or both.

Note that I said a News Blog. Writer blogs are great enter­tain­ment, but they are noto­ri­ously clut­tered with non­sense quizzes, word counts, whin­ing, and so much other crap that find­ing out when an author you like has a story com­ing out can be harder than it should. Maintain a clean weblog that is sim­ply for announc­ing your sales, appear­ances, and other pro­fes­sional items of inter­est. Don’t use it to post pic­tures of your cats. I’m an RSS feed man myself, and I think they are the future, but per­haps you should do an email mail­ing list as well. Post the same con­tent to both, but make sure it’s clear that they are the same infor­ma­tion, so your fans don’t sign up for both and get irri­tated for receiv­ing dupli­cate information.

4. A pro­fes­sional design

This isn’t cheap, but if you are a pro­fes­sional author, you owe it to your­self to hire a designer who can build you some­thing nice and main­tain­able. Tony Greer does great work. Tobias Buckell’s web­site is a model exam­ple of this list. I work fairly afford­ably myself, and you may inquire for rates if you’re inter­ested. But seri­ously, your nephew who has a copy of Front Page 2000 isn’t going to be good enough. Spend a lit­tle money on it, and you’re going to have bet­ter results. People buy books based on cov­ers, and they’re going to judge you by how pro­fes­sional and fresh your design is as well.

5. Full sto­ries and/​or nov­els. Possibly excerpts.

Free sam­ples have been used in mar­ket­ing since the inven­tion of cap­i­tal­ism. Writers and other intel­lec­tual prop­erty cre­ators are often ter­ri­fied of this, and admit­tedly, there’s a risk that all your stuff will be stolen and you will be left pen­ni­less. If you’re lucky! Someone who comes to your web­site may not have read any­thing you have writ­ten. Post a story from a year or two. If you’re brave, put it in the Creative Commons as soon as you can. That might limit resale rights, but chalk it up as a mar­ket­ing expense. I’m not going to go into the Creative Commons too much here, as Cory Doctorow does it bet­ter than any­one else. Let me just say that I agree with him, but I under­stand those who don’t, and I don’t think this will make or break you. But try it out, and see what hap­pens. It worked for Peter Watts!

6. A way to buy your work.

Post links to Amazon, Fictionwise, what­ever. Make them promi­nent. If you have work in print for sale, it should be easy for me to buy it. Somebody really has to make this as easy as iTunes. But that’s a topic for another issue. Link, link, and link again.

7. A way to con­tact you.

Boo, spam! Nobody likes spam, but if you don’t have a way for fans or poten­tial pub­lish­ers to con­tact you, you’re miss­ing out on fan mail, hate mail, and pos­si­ble sales. There are javascript tricks you can use, or you can set up a spe­cific email address that you check on a reg­u­lar basis. You really should have this email address be at your domain above, too. Even if it for­wards to your gmail account. It’s a mat­ter of per­cep­tion. If you own a domain, and you should, use it for your email.

8. A Press Kit

I was run­ning out of ideas, so I stole this one from Tobias Buckell’s page. Short story authors prob­a­bly don’t need press kits, but nov­el­ists might. Photos, book cov­ers, and any­thing else that makes a reporter’s job eas­ier when he wants to report on your work is a very good thing.

9. A Goodies Section

I have seri­ous doubts about peo­ple lov­ing books so much that they want desk­top wall­pa­per, icons, and such, but hey, if it doesn’t cost you any­thing to make them or have them made by a designer, why not? Little rewards like this don’t cost much, but they might be just the edge you need to start a buzz about your lat­est work.Think out­side the box here. I’m hes­i­tant to give this idea away, but if your read­er­ship is young and nerdy, con­sider pub­lish­ing D&D gam­ing stats for your char­ac­ters and cre­ations. Make it easy and allow­able for your fans to play in your world. They’re not going to make any money off of it, so don’t worry. It stopped being yours when you pub­lished it.

10. Something nobody else has tried.

See the idea about about D&D stats. Do some­thing like that. Do some­thing wild and new. It’s a tough world out there for writ­ers. There are a lot of us, and I wish I could say that the best writ­ers win. But mar­ket­ing money has a direct effect on sales. If you’re read­ing this and giv­ing it seri­ous con­sid­er­a­tion, then there’s a good chance that your pub­lisher doesn’t have any mar­ket­ing bucks for you. That means you need to take mat­ters into your own hands. A web­site with all the fea­tures I’ve described above costs any­where from $300-$500 from me. It could cost you thou­sands from other, equally qual­i­fied design­ers, but no mat­ter what, if you do it right, and you give it time, you’re going to make your money back. I won’t guar­an­tee it, but it’s bet­ter than noth­ing at all!

5 Things I don’t rec­om­mend doing:

  1. Featuring your photo promi­nently in the design.
  2. Posting your daily word counts and/​or in-​​depth analy­sis of your daily work. This is inter­est­ing to other writ­ers. Probably not so much to fans, unless they want to be a writer too. Keep a sep­a­rate blog for this.
  3. Your rejec­tions. I’ve ranted about this before. Posting about your rejec­tions is some­thing you should stop doing. I can under­stand why you might do it, but keep it pri­vate. You might say some­thing you regret. Editors read web­sites too.
  4. Excerpts of unpub­lished work. Sorry, nobody cares unless you’re super-​​established and semi-​​famous.  That’s not to say you shouldn’t release the whole thing online if you want.
  5. Bad reviews. I’ve not read books because of the bad reviews their own authors have pub­li­cized. If you don’t link them, I won’t hear about them. This is con­tentious, but I just don’t rec­om­mend it personally.

One last thing. I haven’t been fol­low­ing my own advice here, but you can be sure that after this, I will be, both for myself and for any future clients.

The Central Problem with SFWA’s Main Website, And Solutions

Posted on:

The Central Problem with SFWA’s Main Website, And Solutions

The cen­tral prob­lem with the func­tion­al­ity of SFWA’s web­site is that it doesn’t know who it is attempt­ing to com­mu­ni­cate with. This is under­stand­able, as there are sev­eral pos­si­ble audi­ences for the SFWA web­site: a poten­tial mem­ber, the mem­ber, and the gen­eral inter­ested pub­lic. You might argue that indus­try members/​publishers/​editors are also another audi­ence, but I would just group them in with the gen­eral public.

A lesser prob­lem is that the site is sim­ply dated in design. A quick look at the html code indi­cates pretty seman­tic mark-​​up, but an odd mix of inline styling and stylesheets. There’s a heavy dose of javascript required for the drop-​​down menus to func­tion, which I think is just fine. The links mostly lack title attrib­utes, which might cause prob­lems down the road with show­ing up prop­erly in search engines, but prob­a­bly not a huge deal there. But the real prob­lem is that it just isn’t very inter­est­ing to look at. This is the group of peo­ple that have inspired more big-​​budget amaz­ing action pic­tures with cool eye candy than any other genre of fic­tion. Their web­site should rep­re­sent this, while still being designed with acces­si­bil­ity in mind, of course. But there is a lot you could do to spice up the look.

The infor­ma­tion and tools are orga­nized in a fairly hap­haz­ard way. Why is the Search tool grouped with with the mem­ber login and con­tact infor­ma­tion? Why does the “Why should I join SFWA?” infor­ma­tion take prece­dence on the front page over the press infor­ma­tion? I would rethink the orga­niz­ing and impor­tance of infor­ma­tion here. The piracy cam­paign stuff? I would remove it entirely. It’s an impor­tant issue prob­a­bly, but does it really deserve such front page real estate? Also, I’m sorry, but web rings went out of style in 1998. This really serves to make the page look dated. Of all the pro­fes­sional writ­ing orga­ni­za­tions I looked at, the only one still fea­tur­ing a web ring is SFWA. That goes for the badge images as well. These are all signs of a designer that hasn’t really kept with the times, and are more indica­tive of a pri­vate web­site than a pro­fes­sional orga­ni­za­tion. If you dis­agree with me, just scroll down to the links entry on this blog from a few days ago and look at the other orga­ni­za­tions. Even the worst of them have this right. SFWA’s web­site should get it right too.

Among other sug­ges­tions I will be detail­ing in the future, I rec­om­mend chunk­ing the nav­i­ga­tional infor­ma­tion together bet­ter. Focus the outward-​​facing web­site for prospec­tive mem­bers and the gen­eral pub­lic and remove all infor­ma­tion for exist­ing mem­bers to the log-​​in sec­tion. Prominently fea­ture a log-​​in screen some­where on the page for mem­bers, but have the site behind that be designed to their needs. It’s a dif­fer­ent project and a dif­fer­ent site.

Also, I highly rec­om­mend using some of the wasted screen space now to include a side­bar that rotates on a ran­dom basis from a list of sub­mit­ted authors. Call this Featured Member and have it include 50 words on an author along­side a nice photo of the author or the cover of their lat­est book.

Junk every­thing in the right col­umn and start over, basi­cally. None of that belongs here. And it’s all ugly and out­dated in look.

So these are just a few of my ini­tial thoughts on the web­site. As I am not a mem­ber, I can’t really speak for the pri­vate mate­ri­als behind the login page, but I think there is plenty of work to be done on the public-​​facing side of things.