Giter Site home page Giter Site logo

stack-blog's Issues

Pagination bugs

Two minor bugs:

  • Pagination navigation should be hidden if they are not valid
  • Going to a #pageN that is past the total possible page number isn't handled

Try AJAX based pagination

Based on issues related to #18

Native pagination has two problems:

  • Results in an enormous build time for all the posts we have
  • No support for category/tag pagination

JS pagination has a major problem:

  • It kills performance on any category with a substantial number of posts

What I'm going to try doing is making AJAX based pagination by creating statically generated JSON with the right authors and posts information, to be lazy loaded. I think it's the right approach that will be a middle ground.

Implement draft capability

You should be able to specify a future date for when the post will go live. This would deprecate the "drafts" mode for any post.

Mobile UI fixes to be made

There's a few outstanding issues that we need to cover, especially for home page, individual posts, contributors page

Page navigation shows me the end of the next page

Steps to reproduce:

  1. Go to the homepage
  2. Click "OLDER ARTICLES" to navigate to the second page
  3. Note that you're now looking at the end of Page 2 (unless you didn't have images cached, in which case you're looking at _somewhere near the end but not quite _at* the end* of Page 2.

Debated whether or not to report this, since it could be useful on occasion for quickly paging as the page navigation links remain visible (unless there are uncached images that load after the page scrolls). But this seems like an odd use-case.

Gravatars rendered incorrectly

Should append ?s=48&d=identicon&r=PG&f=1 to the end to get the correct size and request identicon by default instead of the gravatar logo.

screen shot 2015-06-29 at 4 35 27 pm

No paging for tags

Go to a tag that has lots of posts in it, like podcasts or company.

Note the complete absence of page navigation.

You can load other pages by manually entering the URL fragment (for instance, #page6) and then refreshing. But that's not exactly obvious.

Update sidebar content on each channel

So far, I've used the same generic copy on all the channels on the top of the sidebar. We may want to update this to reflect the specific channel: the engineering channel has open source contributions there, a bit more focused on our devs, etc.

Comment import

We're going to have to use the Disqus comment importer if we want to get the comments on the existing WordPress. This is something we'll have to try when there isn't a lot of activity on the existing blog.

Create a mechanism for aligning and sizing images

Currently, all full page posts have lost their left-align, right-align, and original sizing. This is due to a catch all img rule in style.less as the default for all images and lack of support for the current import tools from WordPress. We want to restore the functionality. We can either:

  • See if there's support for it in the current Jekyll implementation, either to add classes or align off the bat
  • Create a CSS rule that allows for alignment using alt tags
  • Train everyone to use actual HTML in their posts for aligned images and create tags
  • Modify the markdown engine to allow for this

Going to look into these options.

Back navigation doesn't work for paging

Steps to reproduce:

  1. Go to the homepage
  2. Click "OLDER ARTICLES" to navigate to the second page
  3. Try to navigate back to the first page, either by clicking your browser's back button or using the keyboard shortcut for the same.
  4. Note that while you're now looking at a different part of Page 2, you're still on Page 2. Confusingly, the URL fragment has changed to #page1

Also happens on author pages.

Probably also worth mentioning that trying to navigate directly to a page by editing the URL fragment (for instance, to #page45) doesn't do anything unless you refresh the page after submitting.

If we're gonna be doing ajax loading for this, I'm thinking we need some popstate and hashchange handlers here.

Podcasts should go through Podtrac before they hit the feed

We use Podtrac for analytics & such on the podcast. My understanding is that we do this by prepending http://www.podtrac.com/pts/redirect.mp3/ to the soundcloud file URL before pushing it out to the feed - so our feed URL actually looks like http://www.podtrac.com/pts/redirect.mp3/feeds.soundcloud.com/stream/XXXXXXXXX.m‌​p3.

I think it's that simple, but Alex Miller knows more.

Author update based on the page posts

The sidebar that shows contributors doesn't match up with posts on that page and sometimes shows duplicate authors if they have consecutive posts.

Front page loads 40MB+ of content on initial load.

The client-side paged loads work for very small scale, but not for anything with a decent post count. Maintaining this would mean loading lots of resources on the client they'll very likely never see as well as create an ever-increasing initial page size with slower load.

Currently loading http://stackexchange.github.io/blog/ results in my browser loading 43.9MB of content over 1.6 minutes, including things like http://stackexchange.github.io/blog/images/category/podcasts.jpg (14.5MB), http://stackexchange.github.io/blog/images/StackExchange-12.jpg (11.7MB) and http://stackexchange.github.io/blog/images/StackExchange-19.jpg (11.6MB). Even though the majority of the bytes are currently made up of a few images, there are still hundreds of HTTP requests happening.

I think for this to be realistic on a client performance perspective, it'll need to use Jekyll's built-in pagination generation.

Related to this: the hero images need to be sized to something reasonable for a client to load, the http://stackexchange.github.io/blog/images/category/podcasts.jpg example is a 5560x3707 14.5MB image of which only a 667x150px window is seen for the hero image (to be safe on assumptions: we can double that for high-dpi to 1334x300).

Update documentation for non-developers

For myself, @ErinCorleyGray and @hairboat to work on. I've given both point people on the community and marketing teams a training on the workflow, it's time to reflect any gaps in the README.md to make sure anyone knows how to use the blog. Some things to consider:

  • Make the create file, commit, pull request, merge workflow through the GitHub interface very clear. Take someone step-by-step with screenshots/gifs.
  • Make the templates for all new files easy. This includes adding authors, posts, and tags
  • Image workflow. How to upload images, reference them, and modify them (alignment, sizing, captions)
  • Draft workflow. How people create drafts, collaborate on them, and eventually publish them? How about reviewing changes?
  • How do we schedule and manage a constant stream of content? I imagine this is a Trello board @ErinCorleyGray ?
  • Who are the point people for questions about the blog? I'm assuming @ErinCorleyGray and @hairboat for respective teams, and myself for anything else.
  • Suggesting changes using issues.

Anything else I'm missing?

Pagination icons & Windows

The characters and are used for navigation but with the current fonts they don't show up on my machine (Windows 8.1, Chrome 43.0.2357.45) -- Hilariously they show up here as I'm editing this bug report in the <textarea> but when I just view the bug report they don't show, so I'm not quite sure if we can simply fix it by changing the font or not.

image

Browse the archive by date?

One of the ways I used the WordPress blog was to find what changed in the early days of the site. For instance, I could find the blog post that described the changes to reputation payouts for questions and know more or less when that changed. But I also used it to find things the other way around. If I see something strange in the data at a particular time, I can often solve the mystery by searching for posts that month. The new blog doesn't seem to have that functionality. Would it be possible to implement some way to browse around a particular date?

Search?

I know Google will index the blog pretty quickly, but we should have a search box available on the site even if we just use Google's custom search.

No podcast feed

On the existing blog, there's a feed: http://blog.stackoverflow.com/feed/

On the new blog, there's a corresponding feed: http://dev.blog.stackexchange.com/feed/

On the existing blog, there's a feed for podcasts: http://blog.stackoverflow.com/category/podcasts/feed/

On the new blog, there is not: http://dev.blog.stackexchange.com/category/podcasts/feed/

We get a fair number of hits on that feed. Apparently there are programs that allow people to subscribe to podcasts for the purpose of listening to them on mobile devices; anyway, we should try not to break that link.

Also, it would be handy to have feeds for tags in general.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.