Skip to content

Commit

Permalink
https-ify
Browse files Browse the repository at this point in the history
Let's find out if we break everything!
  • Loading branch information
raganwald committed Jan 28, 2024
1 parent 6a6aaa6 commit 5f6ceb4
Show file tree
Hide file tree
Showing 97 changed files with 326 additions and 326 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,6 @@

This is the `jekyll/markdown` source for [raganwald.com]. Individual essays are in the `_posts` folder. You are welcome to edit posts in GitHub if you don't feel like forking the repo.

[raganwald.com]: http://raganwald.com "Reg Braithwaite's Blog"
[raganwald.com]: https://raganwald.com "Reg Braithwaite's Blog"

Pull requests are welcome.
4 changes: 2 additions & 2 deletions _includes/head_tags.html
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,8 @@
<link rel="stylesheet" href="/assets/css/ie.css">
<![endif]-->
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
<link href="http://raganwald.com/atom.xml" type="application/atom+xml" rel="alternate" title="raganwald.com">
<link rel="alternate" type="application/rss+xml" href="http://raganwald.com/rss.xml" title="raganwald.com">
<link href="https://raganwald.com/atom.xml" type="application/atom+xml" rel="alternate" title="raganwald.com">
<link rel="alternate" type="application/rss+xml" href="https://raganwald.com/rss.xml" title="raganwald.com">
<meta name=”twitter:site” content=”@raganwald”>

<title>{{ page.title }}</title>
4 changes: 2 additions & 2 deletions _posts/2008-02-21-mouse-trap.md
Original file line number Diff line number Diff line change
Expand Up @@ -93,9 +93,9 @@ Alas, this is typical of Mouse Trap Architectures everywhere. Built with the bes

The company adopted the new build scripts immediately and assigned a junior programmer who was working on several other projects to maintain them. Within months they had been dismantled, in no little part because the team hated the idea that every time the business analyst changed the business rules, their Java code that was carefully constructed for a previous version would stop compiling.

The New Guy lasted a few months longer before realizing that his sudden accord with management was illusory, and that nothing really had changed. He has now forsworn his love for static typing and is now wandering a production Ruby code base [muttering about software development](http://raganwald.com) the way the very old sit in their easy chairs muttering about the government.
The New Guy lasted a few months longer before realizing that his sudden accord with management was illusory, and that nothing really had changed. He has now forsworn his love for static typing and is now wandering a production Ruby code base [muttering about software development](https://raganwald.com) the way the very old sit in their easy chairs muttering about the government.

All that remains of his work are a few XSL files [somewhere](http://raganwald.com/source/actions.xsl), like old game pieces that are rolling around the bottom of a drawer at the cottage hoping that someone will open a bottle of wine and call for a game of Mouse Trap to pass the time.
All that remains of his work are a few XSL files [somewhere](https://raganwald.com/source/actions.xsl), like old game pieces that are rolling around the bottom of a drawer at the cottage hoping that someone will open a bottle of wine and call for a game of Mouse Trap to pass the time.

---

Expand Down
4 changes: 2 additions & 2 deletions _posts/2013-01-08-what-if-i-am-wrong.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ It's a thought experiment, so let's assume we have lots of monkeys and lots of t

So let's presume that we can generate enough pages of text that somewhere, some monkey is writing the works of Shakespeare, and another the works of Phil Dick, and another (possibly in Toronto) is recreating [raganwald.com].

[raganwald.com]: http://raganwald.com
[raganwald.com]: https://raganwald.com

Even if we have enough monkeys writing enough pages, this still won't work. Because the real problem isn't *writing* Shakespeare, it's *finding* Shakespeare amongst all the dreck.

Expand Down Expand Up @@ -105,7 +105,7 @@ Maybe it's about writing better tests. Maybe the real problem, the hard problem,

Maybe strong, static typing matters a great deal when we're writing tests, but dynamic languages are just fine for writing implementations? And maybe you can use tabs or spaces as you see fit in the implementation, but it's crucial that teams synchronize on how to format the test suite?

[poo]: http://raganwald.com/2010/12/01/oop-practiced-backwards-is-poo.html "OOP practiced backwards is 'POO'"
[poo]: https://raganwald.com/2010/12/01/oop-practiced-backwards-is-poo.html "OOP practiced backwards is 'POO'"

Maybe editors don't matter, but explorers and browsers matter? Maybe when we turned Smalltalk into Eclipse, we threw the wrong thing away? Maybe it's far more important to read programs just the way they've been written than it is to try to write them to be read?

Expand Down
10 changes: 5 additions & 5 deletions _posts/2013-02-20-twenty-thirteen.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,11 +27,11 @@ One of the nice things about markdown is that it is what it is. There's very lit

### and now...

In the last twelve months or so, I've been embracing [Github Pages](http://pages.github.com) for some projects. In exchange for fiddling with a domain registrar, I can host things on my own domains. I took the plunge and moved all of my writing from 2013 over to [http://raganwald.com](http://raganwald.com). I'm now using Jekyll to publish my "bloggy thing" to Github. I get the same lame lack of ability to format my posts, but I can now waste time with layouts.
In the last twelve months or so, I've been embracing [Github Pages](http://pages.github.com) for some projects. In exchange for fiddling with a domain registrar, I can host things on my own domains. I took the plunge and moved all of my writing from 2013 over to [https://raganwald.com](https://raganwald.com). I'm now using Jekyll to publish my "bloggy thing" to Github. I get the same lame lack of ability to format my posts, but I can now waste time with layouts.

And I get my own domain, that's a win. And the layouts let me do things like pimp my books on every page without doing a global search-and-replace. Or add analytics to the blog. We'll see if I do much more than just post.

But here on [http://raganwald.com](http://raganwald.com), I use the basic (and free) Jekyll behaviour built into Github Pages. That means absolutely no Jekyll plugins. Which suits me fine.
But here on [https://raganwald.com](https://raganwald.com), I use the basic (and free) Jekyll behaviour built into Github Pages. That means absolutely no Jekyll plugins. Which suits me fine.

New posts go into a `_posts` folder, with a special name. This one is `2013-02-20-twenty-thirteen.md`. The top of each post has some YAML junk:

Expand All @@ -42,7 +42,7 @@ layout: default
---
```

If both of those things are set up correctly, the post is automatically published when I push to Github. It's poured into the "tactile" layout, and the resulting HTML is available at [http://raganwald.com/2013/02/20/twenty-thirteen.html](http://raganwald.com/2013/02/20/twenty-thirteen.html). I can preview my work by running `jekyll` on the command line, `jekyll --auto` if I want it to rebuild the site locally whenever it detects changes, or `jekyll --server 3333` if I want to run a preview web server on port 3333.
If both of those things are set up correctly, the post is automatically published when I push to Github. It's poured into the "tactile" layout, and the resulting HTML is available at [https://raganwald.com/2013/02/20/twenty-thirteen.html](https://raganwald.com/2013/02/20/twenty-thirteen.html). I can preview my work by running `jekyll` on the command line, `jekyll --auto` if I want it to rebuild the site locally whenever it detects changes, or `jekyll --server 3333` if I want to run a preview web server on port 3333.

But building locally is optional. The site is rebuilt by Github when I push and that's what's published to the web.

Expand All @@ -64,11 +64,11 @@ Overall, I think this is going to go well.

Following Github's instructions, I registered my domain and configured the DNS to resolve to Github's servers at `204.232.175.78`. That takes anywhere from a few hours to a few days before a new domain starts 404-ing at Github, showing that the DNS is set up properly.

For each top-level domain, you have two choices. First, and most complicated, you need a fresh Github account with a special repo. For example, you can set up `whizzbang2000` as a Github free account and then create a repo `whizzbang200.github.com`. I then give my `raganwald` account collaboration privileges and we're off to the races. For [http://raganwald.com](http://raganwald.com), I'm already the guy, so there's no need to set up a separate account.
For each top-level domain, you have two choices. First, and most complicated, you need a fresh Github account with a special repo. For example, you can set up `whizzbang2000` as a Github free account and then create a repo `whizzbang200.github.com`. I then give my `raganwald` account collaboration privileges and we're off to the races. For [https://raganwald.com](https://raganwald.com), I'm already the guy, so there's no need to set up a separate account.

Second, you can set up an ordinary repo under your own account, but your site must be in the `gh-pages` branch. That's what most people do if they have more than one site to manage.

I drop a `CNAME` file into the repo. For [http://raganwald.com](http://raganwald.com), the file contains the text `raganwald.com`. Once you push that, Github starts resolving hits to `raganwald.com` to whatever you are publishing. You could drop an index.html file in there, or an index.md with some YAML to tell Github how to build it, or go wild with Liquid Tags, it's up to you.
I drop a `CNAME` file into the repo. For [https://raganwald.com](https://raganwald.com), the file contains the text `raganwald.com`. Once you push that, Github starts resolving hits to `raganwald.com` to whatever you are publishing. You could drop an index.html file in there, or an index.md with some YAML to tell Github how to build it, or go wild with Liquid Tags, it's up to you.

A nice thing about Jekyll is that you can control the Markdown rendering with the `_config.yaml` file:

Expand Down
4 changes: 2 additions & 2 deletions _posts/2013-02-21-hilberts-school.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ He simply calls out the numbers as they are printed, and the students file into

Avoiding the well-travelled road of explaining "this," "closures," or "monads," he decides to explain functional iterators using the Tortoise and Hare algorithm[^tortoise] as an example. People are scratching their heads, but on the second day, all of the students from the first day return. So it must have been a decent lecture.

[^tortoise]: [http://raganwald.com/2013/02/15/turtles-and-iterators.js.html](http://raganwald.com/2013/02/15/turtles-and-iterators.js.html)
[^tortoise]: [https://raganwald.com/2013/02/15/turtles-and-iterators.js.html](https://raganwald.com/2013/02/15/turtles-and-iterators.js.html)

### day two

Expand Down Expand Up @@ -257,6 +257,6 @@ While the students busy themselves writing the test, he sends a pull request to

### post-post scriptum

[Dr. Hilbert's School Has Been Closed For Admissions Irregularities](http://raganwald.com/2013/02/22/breaking-news-programming-school-closed.html)
[Dr. Hilbert's School Has Been Closed For Admissions Irregularities](https://raganwald.com/2013/02/22/breaking-news-programming-school-closed.html)

### end notes
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ Much has been made of the lack of diversity in the technology field. While there

You read here about [Hilbert's Grand JavaScript School][hgjs]. After a stunningly successful first week offering its revolutionary *Learn javaScript in Five Days* course, authorities in Thailand have closed it for failing to offer seating on a fair and equitable basis.

[hgjs]: http://raganwald.com/2013/02/21/hilberts-school.html
[hgjs]: https://raganwald.com/2013/02/21/hilberts-school.html

Operator Dr. Hilbert "Bertie" David protested that he accepted an infinite number of students and was able to accommodate an additional one million, infinity, infinity times infinity, and infinity cubed students on successive days, so clearly his school was incapable of denying education to anyone.

Expand Down
4 changes: 2 additions & 2 deletions _posts/2013-02-23-sieve.md
Original file line number Diff line number Diff line change
Expand Up @@ -309,7 +309,7 @@ function SieveMultiplesOf (iter, aPrime) {
I actually failed that particular interview test when I took it. I can't tell you why, it was "Just one of those days," I guess. But I've never forgotten the fact that no matter how simple the test, interviews are high-pressure situations where anyone can "choke." Well, maybe not anyone. But I certainly can.

[allong.es]: https://github.com/raganwald/allong.es "JavaScript Recipes from JavaScript Allongé"
[drunken]: http://raganwald.com/2013/02/17/a-drunken-walk.html
[ttti]: http://raganwald.com/2013/02/15/turtles-and-iterators.js.html
[drunken]: https://raganwald.com/2013/02/17/a-drunken-walk.html
[ttti]: https://raganwald.com/2013/02/15/turtles-and-iterators.js.html
[ja]: http://leanpub.com/javascriptallongesix
[iterators.js]: https://github.com/raganwald/allong.es/blob/master/lib/iterators.js "iterators.js on github"
2 changes: 1 addition & 1 deletion _posts/2013-03-07-currying-and-partial-application.md
Original file line number Diff line number Diff line change
Expand Up @@ -271,7 +271,7 @@ Yes. And no. Here are some further directions to explore on your own:

Thanks for reading, if you discover a bug in the code, please either [fork the repo][repo] and submit a pull request, or [submit an issue on Github][issue].

p.s. Another essay you might find interesting: [Practical Applications of Partial Application](http://raganwald.com/2013/01/05/practical-applications-of-partial-application.html).
p.s. Another essay you might find interesting: [Practical Applications of Partial Application](https://raganwald.com/2013/01/05/practical-applications-of-partial-application.html).

([discuss](http://www.reddit.com/r/javascript/comments/19urej/whats_the_difference_between_currying_and_partial/))

Expand Down
8 changes: 4 additions & 4 deletions _posts/2013-03-20-six-questions.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,12 +41,12 @@ There is a difference between techniques that are novel and those that are merel

If I read the word "compose" in a codebase and don't know what it means, I can google `function compose` and find out just as if I was looking at a SQL query and needed to be reminded of the semantics of `RIGHT OUTER JOIN`. The same goes for things like partial application,[^pa] or trampolining.[^trampoline]

[^pa]: [Practical Applications of Partial Application](http://raganwald.com/2013/01/05/practical-applications-of-partial-application.html)
[^pa]: [Practical Applications of Partial Application](https://raganwald.com/2013/01/05/practical-applications-of-partial-application.html)
[^trampoline]: [Trampoline (Computing) on Wikipedia](https://en.wikipedia.org/wiki/Trampoline_(computing)#High_Level_Programming)

People can learn an unfamiliar technique. And once it is learned, they benefit from it forever. It is straightforward to learn something using Google and/or StackOverflow and/or an excellent programming blog.[^blog] Hundreds of books are written about things like functional programming, including the subject of the comment.

[^blog]: Or a hit and miss blog like [this](http://raganwald.com)
[^blog]: Or a hit and miss blog like [this](https://raganwald.com)

Familiarity can easily be acquired, provided the technique is unfamiliar to the team, but has been used extensively enough that there is an "information infrastructure" of books, blog posts, StackOverflow questions, sample codebases on Github, libraries, and so on.

Expand Down Expand Up @@ -82,8 +82,8 @@ There are exceptions, such as refactorings that make legacy code more testable,

Entertainment is no reason to try a new technique. Neither is learning on someone else's dime. Everyone can be entertained ad infinitum reading about enchanted forests[^ef] or schools teaching JavaScript programming.[^hilbert] In this day and age, you have plenty of opportunity to learn on your own. Everyone reading this blog has access to personal development environments. There's zero need to fool around on a project that has a mission to deliver change in the world outside of your head.

[^ef]: [A long time ago, in a village far, far away](http://raganwald.com/enchanted-forest/a-long-time-ago-in-a-village-far-far-away.html)
[^hilbert]: [Hilbert's Grand JavaScript School](http://raganwald.com/2013/02/21/hilberts-school.html)
[^ef]: [A long time ago, in a village far, far away](https://raganwald.com/enchanted-forest/a-long-time-ago-in-a-village-far-far-away.html)
[^hilbert]: [Hilbert's Grand JavaScript School](https://raganwald.com/2013/02/21/hilberts-school.html)

You can and should look for practical reasons that a new technique will untangle conflated concerns, or collect scattered responsibilities into a single concern, or clarify the underlying domain logic and intent of code.

Expand Down
4 changes: 2 additions & 2 deletions _posts/2013-03-26-the-interview.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ It had been a long and gruelling process, but the ThinkWare team had whittled th

"Bob was great," said Alice, "The interview got off to a great start when I fizzbuzzed him with Fibonacci. He asked whether I wanted an Enumerator or iterative function. When I suggested he try something recursive, he had no trouble whatsoever."

Ted was equally enthusiastic about Carol. "Super solid on algorithms, she brought up [raganwald's matrix implementation](http://raganwald.com/2008/12/12/fibonacci.html) and we had a good laugh about how you could beat the pants off it with a caching solution. She wrote one and it worked just fine with the 10,000th, 100,000th, and 1,000,000th numbers."
Ted was equally enthusiastic about Carol. "Super solid on algorithms, she brought up [raganwald's matrix implementation](https://raganwald.com/2008/12/12/fibonacci.html) and we had a good laugh about how you could beat the pants off it with a caching solution. She wrote one and it worked just fine with the 10,000th, 100,000th, and 1,000,000th numbers."

![The Fibonacci Spiral](/assets/images/fib.gif)

Expand All @@ -17,7 +17,7 @@ The team talked for a while longer before deciding to ask for enough budget to h

"A difficult case?"

"That's putting it mildly," said [Williams](http://raganwald.com/2011/11/01/williams-master-of-the-comefrom.html), the grizzled veteran who had handled Scott's first meeting of the day. "When I asked him to write Fibonacci for me, he refused, saying that this was no way to interview someone."
"That's putting it mildly," said [Williams](https://raganwald.com/2011/11/01/williams-master-of-the-comefrom.html), the grizzled veteran who had handled Scott's first meeting of the day. "When I asked him to write Fibonacci for me, he refused, saying that this was no way to interview someone."

"I tried to explain that we value craftsmanship, and that this was as good an opportunity as any to discuss the many different considerations when writing software (not to mention validate that someone can actually write software), but I think he flipped the bozo bit on me, he acted like I was a blithering idiot for thinking there was anything to discuss with respect to Fibonacci."

Expand Down
4 changes: 2 additions & 2 deletions _posts/2013-03-27-literate-coffeescript.coffee.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ tags: [coffeescript, hide-specs]

With the demise of Posterous, I was motivated to "get my blogging house in order" and move all of my blogging onto Github. I've written about using Jekyll and Github Pages elsewhere,[^2013] but the short form is:

[^2013]: [Twenty Thirteen](http://raganwald.com/2013/02/20/twenty-thirteen.html)
[^2013]: [Twenty Thirteen](https://raganwald.com/2013/02/20/twenty-thirteen.html)

1. I have my own domains via registrar [gandi.net](http://gandi.net). They point to Github's IP.
2. Each blog gets a repository.
Expand All @@ -23,7 +23,7 @@ Recently, Jeremy Ashkenas released a new feature within CoffeeScript: The abilit

[^caveat]: At this time, Literate CoffeeScript respects code indented with four or more spaces. Hopefully, it will one day respect various other flavours of Markdown code markup such as code fences or even Liquid highlight tags.

I recently started writing a serious of posts about [an enchanted forest](http://raganwald.com/enchanted-forest/a-long-time-ago-in-a-village-far-far-away.html). These posts take the form of a story punctuated with code examples. Literate CoffeeScript is obviously terrific for documenting code, but I thought it might also be ideal for blogging. So I set up a workflow.
I recently started writing a serious of posts about [an enchanted forest](https://raganwald.com/enchanted-forest/a-long-time-ago-in-a-village-far-far-away.html). These posts take the form of a story punctuated with code examples. Literate CoffeeScript is obviously terrific for documenting code, but I thought it might also be ideal for blogging. So I set up a workflow.

First, I include a code sample in my blog. If you're not 100% familiar with Markdown and code, the raw markdown source is [here](https://raw.github.com/raganwald/raganwald.github.com/master/_posts/2013-03-27-literate-coffeescript.coffee.md). It ends up looking like this:

Expand Down
Loading

0 comments on commit 5f6ceb4

Please sign in to comment.