Skip to content

Commit e65481b

Browse files
authored
Upgrade to Remark 13 (#131)
* Update dependencies * Use custom plugin for furigana * Replace remark-abbr with plain HTML tags
1 parent b2fcc3d commit e65481b

File tree

27 files changed

+2067
-2200
lines changed

27 files changed

+2067
-2200
lines changed

content/microblog/post-1572551177006.md

+2-4
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,8 @@ tags:
77
path: post-1572551177006
88
---
99

10-
I absolutely love the work that the SSWG has been doing, and [this annual update](https://swift.org/blog/sswg-update/) published by [Tanner](https://twitter.com/tanner0101) is a testament to this.
10+
I absolutely love the work that the <abbr title="Swift Server Work Group">SSWG</abbr> has been doing, and [this annual update](https://swift.org/blog/sswg-update/) published by [Tanner](https://twitter.com/tanner0101) is a testament to this.
1111

12-
The lack of consensus on how to write server-side Swift has been dividing its fledgling community; something that the SSWG has been working towards solving since its inception.
12+
The lack of consensus on how to write server-side Swift has been dividing its fledgling community; something that the <abbr title="Swift Server Work Group">SSWG</abbr> has been working towards solving since its inception.
1313

1414
I am hoping to be able to contribute more to this ecosystem, and I urge anyone who's interested in making Swift more ubiquitous to do the same.
15-
16-
*[SSWG]: Swift Server Work Group

content/microblog/post-1572809560876.md

+1-3
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,4 @@ I have a soft spot for dark interfaces. So much so that the several instances I
1212

1313
Since I had already done the legwork of using CSS variable for the colors used throughout the site, it was relatively easy to implement this new dark theme. Here is [the commit](https://github.com/kaishin/redalemeden.com/commit/ae27e217dd2df9438ed81edbc8230103c55e7793) for those of you interested in the nitty-gritties.
1414

15-
Currently the site takes the same appearance as the OS, but I am entertaining the idea of adding a manual toggle sometime down the road.
16-
17-
*[OS]: Operating System
15+
Currently the site takes the same appearance as the <abbr title="Operating System">OS</abbr>, but I am entertaining the idea of adding a manual toggle sometime down the road.

content/microblog/post-1577017491759.md

+2-4
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,8 @@ tags:
77
path: post-1577017491759
88
---
99

10-
IBM has [unofficially announced](https://forums.swift.org/t/december-12th-2019/31735) that they are abandoning Swift and their work within the SSWG starting 2020. Sad news, given that their stewardship of Kitura and clout in the enterprise market gave a much-needed credence boost to Swift in the server-side space.
10+
IBM has [unofficially announced](https://forums.swift.org/t/december-12th-2019/31735) that they are abandoning Swift and their work within the <abbr title="Swift Server Work Group">SSWG</abbr> starting 2020. Sad news, given that their stewardship of Kitura and clout in the enterprise market gave a much-needed credence boost to Swift in the server-side space.
1111

12-
Four years since Apple open-sourced Swift and made it run on Linux, the ecosystem still has ways to go to stand on its own as a battle-tested stack that attracts developers from other established communities. With that being said, this process has been accelerated since SSWG started a little over a year ago; they since have been doing a remarkable job with reconciling different projects and focusing on key modular components that benefit the community at large.
12+
Four years since Apple open-sourced Swift and made it run on Linux, the ecosystem still has ways to go to stand on its own as a battle-tested stack that attracts developers from other established communities. With that being said, this process has been accelerated since <abbr title="Swift Server Work Group">SSWG</abbr> started a little over a year ago; they since have been doing a remarkable job with reconciling different projects and focusing on key modular components that benefit the community at large.
1313

1414
While this news is a bit of a setback, I firmly believe that server-side Swift's best days are still ahead of it.
15-
16-
*[SSWG]: Swift Server Work Group

content/microblog/post-1587316560066.md

-2
Original file line numberDiff line numberDiff line change
@@ -17,5 +17,3 @@ Here are some of the things I learned this week, in the order I’ve noted them
1717
* The relationship between `size`, `stride`, and `alignment` in the memory layout of Swift types, thanks to this [excellent article](https://swiftunboxed.com/internals/size-stride-alignment/) by [Greg Heo](https://gregheo.com).
1818

1919
* In Swift _Combine_, you can filter out _nil_ values using `.compactMap { $0 }` ([reference](https://developer.apple.com/documentation/combine/publisher/3204698-compactmap)). I was using `filter(_:)` before but that still requires force-unwrapping the value in subsequent operations.
20-
21-
*[COVID-19]: Corona Virus Disease 19

content/microblog/post-1588533158735.md

+1-2
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ Here are some of the things I learned this week, in the order I’ve noted them
2121

2222
* [This answer](https://www.quora.com/What-are-the-most-important-things-involved-in-delivering-a-great-software-library/answer/Dave-Abrahams?share=c027457a) by [Dave Abrahams](https://daveabrahams.com) to a Quora question about the most important things involved in delivering a great software library. If I had to pick only one, that would be “rigorously document“.
2323

24-
* The _.org_ TLD is [saved](https://www.icann.org/news/blog/icann-board-withholds-consent-for-a-change-of-control-of-the-public-interest-registry-pir)!
24+
* The _.org_ <abbr title="Top-level Domain">TLD</abbr> is [saved](https://www.icann.org/news/blog/icann-board-withholds-consent-for-a-change-of-control-of-the-public-interest-registry-pir)!
2525

2626
[^1]: Not gonna lie, it's a fairly prevalent feeling throughout these updates.
27-
*[TLD]: Top-level Domain

content/microblog/post-1590230484420.md

+4-6
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,8 @@ path: post-1590230484420
88
---
99
Before _Swift Evolution_, I had no idea what an [ABI](https://en.wikipedia.org/wiki/Application_binary_interface) was. Today, even though I still get lost when it comes to the minutiae, I can at least follow along threads like [this one](https://internals.rust-lang.org/t/a-stable-modular-abi-for-rust/12347) without feeling too uncomfortable.
1010

11-
It’s also eye-opening to see how different communities and companies prioritize different aspects of a programming language. Rust got `async`/`await` since version 1.39.0, released last November, but they have yet to stabilize the ABI. Apple went about it the other way around with Swift, given the importance of ABI stability for their platforms.
11+
It’s also eye-opening to see how different communities and companies prioritize different aspects of a programming language. Rust got `async`/`await` since version 1.39.0, released last November, but they have yet to stabilize the <abbr title="Application binary interface">ABI</abbr>. Apple went about it the other way around with Swift, given the importance of <abbr title="Application binary interface">ABI</abbr> stability for their platforms.
1212

13-
> A stable ABI would allow Rust libraries to be loaded by other languages (such as Swift), and would allow Rust to interop with libraries defined in other programming languages. [] However, a stable ABI is not all peaches and roses. Having to standardize the memory layout of data can limit the number of optimizations the compiler can perform.
14-
15-
> A modularized ABI would be optional while compiling. This modular ABI could be published as a versioned crate. If the ABI ever needs a backward-compatibility breaking change, the change could be made within Semver. Alternatively, a new ABI-compliant compiler backend could be developed, or the current compiler backend could be extended to support an ABI feature flag that would toggle ABI compliant builds.
16-
17-
*[ABI]: Application binary interface
13+
> A stable <abbr title="Application binary interface">ABI</abbr> would allow Rust libraries to be loaded by other languages (such as Swift), and would allow Rust to interop with libraries defined in other programming languages. [] However, a stable <abbr title="Application binary interface">ABI</abbr> is not all peaches and roses. Having to standardize the memory layout of data can limit the number of optimizations the compiler can perform.
14+
>
15+
> A modularized <abbr title="Application binary interface">ABI</abbr> would be optional while compiling. This modular <abbr title="Application binary interface">ABI</abbr> could be published as a versioned crate. If the <abbr title="Application binary interface">ABI</abbr> ever needs a backward-compatibility breaking change, the change could be made within Semver. Alternatively, a new <abbr title="Application binary interface">ABI</abbr>-compliant compiler backend could be developed, or the current compiler backend could be extended to support an <abbr title="Application binary interface">ABI</abbr> feature flag that would toggle <abbr title="Application binary interface">ABI</abbr> compliant builds.

content/microblog/post-1590742233096.md

+2-3
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,7 @@ tags:
55
- SwiftUI
66
path: post-1590742233096
77
---
8-
A SwiftUI function grapher in 160 LOC. The framework might be immature, but it made a lot of my work a tad easier. I will share the source as part of a project I am currently working on, so stay tuned!
98

10-
![A function grapher in SwiftUI](assets/image-1590742233096.png "A function grapher in SwiftUI")
9+
A SwiftUI function grapher in 160 <abbr title="lines of code">LOC</abbr>. The framework might be immature, but it made a lot of my work a tad easier. I will share the source as part of a project I am currently working on, so stay tuned!
1110

12-
*[LOC]: lines of code
11+
![A function grapher in SwiftUI](assets/image-1590742233096.png "A function grapher in SwiftUI")

content/microblog/post-1591552154825.md

+3-5
Original file line numberDiff line numberDiff line change
@@ -8,20 +8,18 @@ path: post-1591552154825
88
---
99
Here are some of the things I learned this week, in the order I’ve noted them down.
1010

11-
* The current chain of events unfolding across the US made me realize how much work still needs to be done in a country that prides itself on equality and justice. #BLM
11+
* The current chain of events unfolding across the US made me realize how much work still needs to be done in a country that prides itself on equality and justice. #BLM
1212

1313
* _Tools for better thinking_ ([link](https://untools.co)). A nifty website with an assortment of techniques and frameworks to help with decision making and problem solving. The Dropbox Design blog [has more](https://dropbox.design/article/mental-models-for-designers) on some of these models.
1414

1515
* _Circle packing_ ([Wikipedia](https://en.wikipedia.org/wiki/Circle_packing)). I was introduced to the concept of _packing density_ in business school as part of a product design and packaging workshop, but I never had the chance to take a look at the math behind it. Geometry is beautiful.
1616

1717
### Programming
1818

19-
* The UI on the [Crew Dragon](https://en.wikipedia.org/wiki/Dragon_2#Crew_Dragon) was built using Web technology running on Chromium, according to this [AMA](https://www.reddit.com/r/spacex/comments/gxb7j1/we_are_the_spacex_software_team_ask_us_anything/).
19+
* The UI on the [Crew Dragon](https://en.wikipedia.org/wiki/Dragon_2#Crew_Dragon) was built using Web technology running on Chromium, according to this [AMA](https://www.reddit.com/r/spacex/comments/gxb7j1/we_are_the_spacex_software_team_ask_us_anything/).
2020

2121
* I’ve used Swift key paths here and there, but I never explored the lesser known parts of this API. This week I picked up `AnyKeyPath` and `PartialKeyPath<Root>` and used them for a server-side project I am working on ([link](https://klundberg.com/blog/swift-4-keypaths-and-you/)).
2222

23-
* Android phones seem to be crashing when using a particular image as a wallpaper ([link](https://www.androidauthority.com/image-wallpaper-crash-soft-brick-1124505/)). According to [this Twitter thread](https://twitter.com/mishaalrahman/status/1267940360967327746), the issue happens during color space conversion, where [the formula](https://android.googlesource.com/platform/frameworks/base/+/refs/heads/master/packages/SystemUI/src/com/android/systemui/glwallpaper/ImageProcessHelper.java#47) used to create a pixel lightness matrix rounds the color values up, resulting in a RGB sum greater than 255.[^1] This in turn causes an out-of-bounds exception that keeps happening every time the system UI process restarts.
23+
* Android phones seem to be crashing when using a particular image as a wallpaper ([link](https://www.androidauthority.com/image-wallpaper-crash-soft-brick-1124505/)). According to [this Twitter thread](https://twitter.com/mishaalrahman/status/1267940360967327746), the issue happens during color space conversion, where [the formula](https://android.googlesource.com/platform/frameworks/base/+/refs/heads/master/packages/SystemUI/src/com/android/systemui/glwallpaper/ImageProcessHelper.java#47) used to create a pixel lightness matrix rounds the color values up, resulting in a RGB sum greater than 255.[^1] This in turn causes an out-of-bounds exception that keeps happening every time the system UI process restarts.
2424

2525
[^1]: This formula is formally called sRGB Luma (Rec. 709). I’ve written more about it and other color lightness topics [here](https://thoughtbot.com/blog/closer-look-color-lightness).
26-
27-
*[AMA]: Ask Me Anything

content/microblog/post-1593335412291.md

+1-3
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,10 @@ This is true for any endeavor, but especially so for software development.
2020

2121
> There are plenty of voices in the community who are echoing this excitement. I can’t add anything to that discussion. And besides, that’s not really where my head’s at right now.
2222
23-
The official Apple content generates enough sense of FOMO as it is. Combining that with a firehose of _What's new in X_ blog posts, podcasts, YouTube videos, and tweets doesn't help much as far as I am concerned.[^1]
23+
The official Apple content generates enough sense of <abbr title="Fear of Missing Out">FOMO</abbr> as it is. Combining that with a firehose of _What's new in X_ blog posts, podcasts, YouTube videos, and tweets doesn't help much as far as I am concerned.[^1]
2424

2525
> It’s been an exciting week, so take a moment to collect yourself. Go on a walk. Take a hike. (Be safe about it.) Do whatever you need to break free of the “reality distortion field”. Once you do, you’ll have the necessary distance to determine what new technologies you should pay attention to and what you can ignore for now.
2626
2727
Solid advice, WWDC or otherwise.
2828

29-
*[FOMO]: Fear of Missing Out
30-
3129
[^1]: I published my personal notes throughout the week, but my audience is infinitesimally tiny. Not to mention that I usually publish these things primarily for my future self.

content/microblog/post-1595191892888.md

+1-3
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ Here are some of the things I learned this week, in the order I’ve noted them
1010

1111
* Understanding any topic in greater depth requires honesty, integrity, and patience. Thinking hard about the problem space and seeking first-hand experience also yields far deeper understanding than contenting oneself with the syntheses of others ([link](https://nabeelqu.co/understanding)).
1212

13-
* Beta invites to OpenAI’s [API](https://beta.openai.com), powered by the new GPT-3 ([paper](https://arxiv.org/pdf/2005.14165.pdf)), are starting to go out and some of the demos are generating a lot of buzz at the moment. [This was the article](https://maraoz.com/2020/07/18/openai-gpt3/) that brought my attention to this.
13+
* Beta invites to OpenAI’s [API](https://beta.openai.com), powered by the new <abbr title="Generative Pre-trained Transformer">GPT</abbr>-3 ([paper](https://arxiv.org/pdf/2005.14165.pdf)), are starting to go out and some of the demos are generating a lot of buzz at the moment. [This was the article](https://maraoz.com/2020/07/18/openai-gpt3/) that brought my attention to this.
1414

1515
### Programming
1616

@@ -19,5 +19,3 @@ Here are some of the things I learned this week, in the order I’ve noted them
1919
* How to use `HTMLElement` to build a custom DOM element that encapsulates structure, styling, and interactions ([link](https://html.spec.whatwg.org/multipage/custom-elements.html)).
2020

2121
* How the `isSource` and `properties` arguments in SwiftUI’s `matchedGeometryEffect` work ([link](https://swiftui-lab.com/matchedgeometryeffect-part2/)).
22-
23-
*[GPT]: Generative Pre-trained Transformer

content/microblog/post-1608029294826.md

+1-3
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,8 @@ tags:
66
- privacy
77
path: post-1608029294826
88
---
9-
As you might have already heard, Apple announced earlier this summer their plans to turn off IDFA—a unique device ID used by advertisers track users across apps. Following the backlash from online advertisers and mobile game publishers that this move triggered, they subsequently [backed down](https://www.idropnews.com/news/apple-backs-down-on-ios-14-ad-privacy-after-backlash-from-facebook-and-game-developers/142386/) this fall when iOS 14 was released.
9+
As you might have already heard, Apple announced earlier this summer their plans to turn off <abbr title="Identifier for Advertisers">IDFA</abbr>—a unique device ID used by advertisers track users across apps. Following the backlash from online advertisers and mobile game publishers that this move triggered, they subsequently [backed down](https://www.idropnews.com/news/apple-backs-down-on-ios-14-ad-privacy-after-backlash-from-facebook-and-game-developers/142386/) this fall when iOS 14 was released.
1010

1111
In the light of this development, Mozilla [put out a page](https://foundation.mozilla.org/en/campaigns/apples-anti-tracking-plans-iphone/) with a form for users like you and me to show support for Apple's anti-tracking plans. I signed it and I recommend anyone who cares about online privacy to do so[^1].
1212

1313
[^1]: The fact that both Apple and Mozilla generate a lot of revenue, albeit indirectly, from online and mobile advertising might sound puzzling at first, but the potential gains in terms of brand value and consumer trust would more than make up for the presumed losses.
14-
15-
*[IDFA]: Identifier for Advertisers

0 commit comments

Comments
 (0)