Skip to content

Commit

Permalink
Replaced HTTP links with HTTPs.
Browse files Browse the repository at this point in the history
  • Loading branch information
dblock committed Jul 13, 2023
1 parent 89be4b9 commit 5c05ff1
Show file tree
Hide file tree
Showing 327 changed files with 662 additions and 663 deletions.
2 changes: 1 addition & 1 deletion 404.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,5 +13,5 @@ Sorry, but the page you were trying to view does not exist --- perhaps you can t
var GOOG_FIXURL_SITE = '{{ site.url }}'
</script>
<script type="text/javascript"
src="http://linkhelp.clients.google.com/tbproxy/lh/wm/fixurl.js">
src="https://linkhelp.clients.google.com/tbproxy/lh/wm/fixurl.js">
</script>
4 changes: 2 additions & 2 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ Start a local Jekyll server.
bundle exec jekyll serve
```

Navigate to http://localhost:4000 to see the blog.
Navigate to https://localhost:4000 to see the blog.

## Contribute Content

Expand All @@ -75,7 +75,7 @@ git checkout -b my-feature-branch

Add or edit a post.

Make sure that it displays correctly locally at http://localhost:4000.
Make sure that it displays correctly locally at https://localhost:4000.

### Commit Changes

Expand Down
2 changes: 1 addition & 1 deletion Gemfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
source 'http://rubygems.org'
source 'https://rubygems.org'

gem 'rake'
gem 'github-pages'
Expand Down
2 changes: 1 addition & 1 deletion Gemfile.lock
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
GEM
remote: http://rubygems.org/
remote: https://rubygems.org/
specs:
activesupport (7.0.4.3)
concurrent-ruby (~> 1.0, >= 1.0.2)
Expand Down
2 changes: 1 addition & 1 deletion _data/navigation.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
- title: "&lt;"
url: http://www.dblock.org
url: https://www.dblock.org
- title: Home
url: /
- title: About
Expand Down
2 changes: 1 addition & 1 deletion _includes/_browser-upgrade.html
Original file line number Diff line number Diff line change
@@ -1 +1 @@
<!--[if lt IE 9]><div class="browser-upgrade alert alert-info">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</div><![endif]-->
<!--[if lt IE 9]><div class="browser-upgrade alert alert-info">You are using an <strong>outdated</strong> browser. Please <a href="https://browsehappy.com/">upgrade your browser</a> to improve your experience.</div><![endif]-->
4 changes: 2 additions & 2 deletions _includes/_disqus_comments.html
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,6 @@
(document.getElementsByTagName('HEAD')[0] || document.getElementsByTagName('BODY')[0]).appendChild(s);
}());
</script>
<noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
<a href="http://disqus.com" class="dsq-brlink">comments powered by <span class="logo-disqus">Disqus</span></a>
<noscript>Please enable JavaScript to view the <a href="https://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
<a href="https://disqus.com" class="dsq-brlink">comments powered by <span class="logo-disqus">Disqus</span></a>
{% endif %}
4 changes: 2 additions & 2 deletions _includes/_footer.html
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{% if site.owner.google.ad-client and site.owner.google.ad-slot %}
<div class="google-ads">
<!-- 320 x 50 ad -->
<script async src="http://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<ins class="adsbygoogle"
style="display:inline-block;width:320px;height:50px"
data-ad-client="{{ site.owner.google.ad-client }}"
Expand All @@ -12,4 +12,4 @@
</div><!-- /.google-ads -->
{% endif %}

<span>&copy; 1994-{{ site.time | date: '%Y' }} {{ site.owner.name }}. Powered by <a href="http://jekyllrb.com" rel="nofollow">Jekyll</a> based on the <a href="http://mademistakes.com/minimal-mistakes/" rel="nofollow">Minimal Mistakes</a> theme.</span>
<span>&copy; 1994-{{ site.time | date: '%Y' }} {{ site.owner.name }}. Powered by <a href="https://jekyllrb.com" rel="nofollow">Jekyll</a> based on the <a href="https://mademistakes.com/minimal-mistakes/" rel="nofollow">Minimal Mistakes</a> theme.</span>
4 changes: 2 additions & 2 deletions _includes/_head.html
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,9 @@
{% capture canonical %}{{ site.url }}{% if site.permalink contains '.html' %}{{ page.url }}{% else %}{{ page.url | remove:'index.html' | strip_slash }}{% endif %}{% endcapture %}
<link rel="canonical" href="{{ canonical }}">
<link href="{{ site.url }}/feed.xml" type="application/atom+xml" rel="alternate" title="{{ site.title }} Feed">
{% if site.owner.google.plus %}<link rel="author" href="http://plus.google.com/+{{ site.owner.google.plus }}?rel=author">{% endif %}
{% if site.owner.google.plus %}<link rel="author" href="https://plus.google.com/+{{ site.owner.google.plus }}?rel=author">{% endif %}

<!-- http://t.co/dKP3o1e -->
<!-- https://t.co/dKP3o1e -->
<meta name="HandheldFriendly" content="True">
<meta name="MobileOptimized" content="320">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
Expand Down
2 changes: 1 addition & 1 deletion _includes/_license.html
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
<div class="license">
<a rel="license" href="http://creativecommons.org/licenses/by/4.0/"><img alt="Creative Commons License" style="border-width:0" src="https://i.creativecommons.org/l/by/4.0/80x15.png" /></a>
<a rel="license" href="https://creativecommons.org/licenses/by/4.0/"><img alt="Creative Commons License" style="border-width:0" src="https://i.creativecommons.org/l/by/4.0/80x15.png" /></a>
</div>
1 change: 0 additions & 1 deletion _plugins/link-checker-exclude-urls.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,2 @@
/tags/asp.net
https://github.com/pulls?q=is:pr+author:dblock+archived:false+user:opensearch-project+is:closed
https://github.com/pulls?q=is:pr+author:dblock+archived:false+user:opensearch-project+is:closed+is:merged
4 changes: 2 additions & 2 deletions _plugins/link-checker.rb
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ module Jekyll::LinkChecker

##
# Pattern of local paths to ignore
@ignored_paths = %r{(^/javadocs|^mailto:)}.freeze
@ignored_paths = %r{(^/tags|^mailto:)}.freeze

##
# Holds the list of failures
Expand Down Expand Up @@ -88,7 +88,7 @@ def self.init(site)

@external_link_checker = LinkChecker::Typhoeus::Hydra::Checker.new(
logger: Jekyll.logger,
hydra: { max_concurrency: 2 },
hydra: { max_concurrency: 5 },
retries: 1,
user_agent: 'dblock.org Link Checker/1.0'
)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,13 @@ tags: [asp.net]
comments: true
dblog_post_id: 4
---
![dynamic sitemap rendered](http://www.codeproject.com/KB/aspnet/dynamicsitemap/dynamicsitemap.jpg)
![dynamic sitemap rendered](https://www.codeproject.com/KB/aspnet/dynamicsitemap/dynamicsitemap.jpg)

Sitemaps and breadcrumbs (SiteMapPath) are useful and easy to implement for a static site with a sitemap file. For dynamic sites, something as simple seems to get much more complicated.

When I started reading about sitemaps for dynamic sites, I found a common approach: generate a static site map for the whole website from, for example, a data source. Re-generate periodically. Use the [XmlSiteMapProvider](https://learn.microsoft.com/en-us/dotnet/api/system.web.xmlsitemapprovider). Cache. The technique is described in [this CodeProject article](https://www.codeproject.com/Articles/16860/Building-a-dynamic-SiteMap-in-ASP-NET-for-a-la).

This doesn't work for my site at all. I need to provide a site map for a large number of pages, potentially hundreds of thousands. The site is deep and dynamic, and only a small unpredictable set of pages is accessed frequently. There're also two hundred different object types in the back-end database which is not coupled with the user-interface at all. Querying everything once is not trivial. Generating an accurate site map for the whole site would take too long, would be a lot of code, and would definitely take too much memory to cache.

[My CodeProject Article](http://www.codeproject.com/KB/aspnet/dynamicsitemap.aspx) demonstrates a simpler and practical solution chosen.
[My CodeProject Article](https://www.codeproject.com/KB/aspnet/dynamicsitemap.aspx) demonstrates a simpler and practical solution chosen.

Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ tags: [asp.net]
comments: true
dblog_post_id: 3
---
![ASP.NET Ajax Dirty Panel Extender in Action](http://www.codeproject.com/KB/ajax/ajaxdirtypanelextender/screenshot.jpg)
![ASP.NET Ajax Dirty Panel Extender in Action](https://www.codeproject.com/KB/ajax/ajaxdirtypanelextender/screenshot.jpg)

FoodCandy is (was) a rich social network that offers users many web forms to fill. For example, users can post articles and edit lengthy profiles. Often they click on a link that takes them away from the page or press the wrong key (e.g. backspace that navigates to the previous page). In both cases their changes get lost. And it is always frustrating to have to re-enter the same text twice. Wouldn't it be nice to warn the user that he has unsaved data and give him an opportunity to cancel, then save his data?

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ There are several good articles about reading and writing resources from/to a co

This implementation is a framework that enumerates resources and implements both read and write of the file version (`VS_VERSIONINFO`) resources. It can be easily extended to other resource types.

<a href='http://www.codeproject.com/Articles/27373/File-Resource-Management-Library-NET' target='_blank'>CodeProject Article</a>
<a href='https://www.codeproject.com/Articles/27373/File-Resource-Management-Library-NET' target='_blank'>CodeProject Article</a>

#### Update (2015)

Expand Down
4 changes: 2 additions & 2 deletions _posts/2008/2008-08-10-who-am-i.markdown
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,9 @@ dblog_post_id: 2
---
Before I start writing anything serious here, I got to get some credibility :)

My name is Daniel Doubrovkine, aka dB. I've had a blog ([www.dblock.org](http://www.dblock.org)) since 1994 or something like that and I've been in technology for slightly longer than that. I've founded several companies, worked for [The Evil Empire](http://www.microsoft.com) for five years and several other businesses since.
My name is Daniel Doubrovkine, aka dB. I've had a blog ([www.dblock.org](https://www.dblock.org)) since 1994 or something like that and I've been in technology for slightly longer than that. I've founded several companies, worked for [The Evil Empire](https://www.microsoft.com) for five years and several other businesses since.

Today I am Development Manager of Products at [Application Security Inc.](https://web.archive.org/web/20131111165225/https://www.appsecinc.com). I have a team of three dozen people shipping two products: [AppDetectivePro](https://web.archive.org/web/20131111165225/https://www.appsecinc.com/products/appdetective/) and [DbProtect](https://web.archive.org/web/20131111165225/https://www.appsecinc.com/products/dbprotect/index.shtml). I contribute to a variety of open-source projects as well on my free time and have posted a few articles on [CodeProject](http://www.codeproject.com/script/Articles/MemberArticles.aspx?amid=913212).
Today I am Development Manager of Products at [Application Security Inc.](https://web.archive.org/web/20131111165225/https://www.appsecinc.com). I have a team of three dozen people shipping two products: [AppDetectivePro](https://web.archive.org/web/20131111165225/https://www.appsecinc.com/products/appdetective/) and [DbProtect](https://web.archive.org/web/20131111165225/https://www.appsecinc.com/products/dbprotect/index.shtml). I contribute to a variety of open-source projects as well on my free time and have posted a few articles on [CodeProject](https://www.codeproject.com/script/Articles/MemberArticles.aspx?amid=913212).

I also have a rather large pet project, FoodCandy - a food social network with thousands of members. FoodCandy is powered by [SnCore](https://github.com/dblock/sncore), a social networking SDK that I wrote from scratch.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ dblog_post_id: 7
---
### Prologue

I've been doing a lot of [Wix](http://wixtoolset.org/) lately. Actually for the past six years or so: I was a believer since my last couple of years at [The Evil Empire](http://www.microsoft.com). [Wix](http://wixtoolset.org/) is easy, but custom actions aren't so much. Unit testing custom actions is the topic of this post.
I've been doing a lot of [Wix](https://wixtoolset.org/) lately. Actually for the past six years or so: I was a believer since my last couple of years at [The Evil Empire](https://www.microsoft.com). [Wix](https://wixtoolset.org/) is easy, but custom actions aren't so much. Unit testing custom actions is the topic of this post.

My team at my real job has been rebuilding deployment and installation for a rather large application and had to write three large installers and many custom actions that don't exist in the wix toolset. We started a long time ago, all the work is in C++. And since many prior fiascos have left me a believer in agile practices, I wanted to figure out how to unit test these many custom actions.

Expand Down Expand Up @@ -80,7 +80,7 @@ lpca(hproduct);

### Unit Testing a Custom Action

You can now integrate this method with [CppUnit](http://cppunit.sourceforge.net/) or any other unit-testing framework. Just call regular MSI functions. We've managed almost 100% code-coverage today for two dozen CAs. We still don't know how to properly invoke deferred custom actions, but it doesn't prevent unit-testing.
You can now integrate this method with [CppUnit](https://cppunit.sourceforge.net/) or any other unit-testing framework. Just call regular MSI functions. We've managed almost 100% code-coverage today for two dozen CAs. We still don't know how to properly invoke deferred custom actions, but it doesn't prevent unit-testing.

### Source Code

Expand Down
4 changes: 2 additions & 2 deletions _posts/2008/2008-08-31-dni-setup-msi-bootstrapper.markdown
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ dblog_post_id: 9
---
I've been heavily contributing to a project called DNI or dotNetInstaller in the past several months. DNI is a setup bootstrapper that basically chains multiple MSIs together and allows to conditionally install pre-requisites.

The [Wix](http://wixtoolset.org/) mailing list is full of conversations about a bootstrapper and it looks like someone at Microsoft is dedicating himself full time to making this happen. The timeframe is 2009 though and we must ship software in the meantime. We have decided to find a bootstrapper technology that is "good enough" and settled on DNI. My team has contributed several major features to the upcoming version 1.4.
The [Wix](https://wixtoolset.org/) mailing list is full of conversations about a bootstrapper and it looks like someone at Microsoft is dedicating himself full time to making this happen. The timeframe is 2009 though and we must ship software in the meantime. We have decided to find a bootstrapper technology that is "good enough" and settled on DNI. My team has contributed several major features to the upcoming version 1.4.

- Support for deployment on 64-bit platforms
- Embedding all dependencies into a single Setup.exe
Expand All @@ -19,6 +19,6 @@ There're two dozen other features contributed by developers around the world, no

DNI's design is not the best and a lot of things could be done better. But it's a project born of rather practical needs and works well. If you're looking for a bootstrapper right now, check it out.

- [Original CodeProject Article](http://www.codeproject.com/KB/install/dotNetInstaller.aspx)
- [Original CodeProject Article](https://www.codeproject.com/KB/install/dotNetInstaller.aspx)
- [dotNetInstaller on Github](https://github.com/dblock/dotnetinstaller)

2 changes: 1 addition & 1 deletion _posts/2008/2008-09-03-google-chrome.markdown
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,6 @@ dblog_post_id: 11
---
Seriously, this is some awesome work. And I am rarely impressed by software.

Do read their technical strip: [http://www.google.com/googlebooks/chrome](http://www.google.com/googlebooks/chrome/).
Do read their technical strip: [https://www.google.com/googlebooks/chrome](https://www.google.com/googlebooks/chrome/).

![]({{ site.url }}/images/posts/2008/2008-09-03-google-chrome/google-chrome-2.jpg)
4 changes: 2 additions & 2 deletions _posts/2008/2008-09-06-documenting-wix-code.markdown
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ I knew from day one that I'll need to document all this, so I started writing do

**_Wix files are XML and we treat them as source code. They should be documented as source code!_**

We use [Doxygen](http://www.doxygen.org) to generate source code documentation. Doxygen supports filters: command line tools invoked for every file. It looks like all I need is a preprocessor that can transform a .wxs file into doxygen documentation!
We use [Doxygen](https://www.doxygen.org) to generate source code documentation. Doxygen supports filters: command line tools invoked for every file. It looks like all I need is a preprocessor that can transform a .wxs file into doxygen documentation!

A .wixproj project consists of .wxs, .wxi and .wxl files. I chose to take a .wxs file as input, which may have a Product or Merge XML node representing a product or a merge module respectively. Each .wxs file may contain a number of defines which need to be expanded. There may be includes that reference other files that might contain more wix xml, other includes, etc.

Expand Down Expand Up @@ -44,7 +44,7 @@ Here's a simple wix installer.
<?define UpgradeCode="{3485E6A2-A1F3-4329-8BB5-ED8FFCF283D4}"?>
<?define ProductCode="*"?>
<?define PackageCode="{????????-????-????-????-????????????}"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Wix xmlns="https://schemas.microsoft.com/wix/2006/wi">
<!-- This is a test MSI to demonstrate major upgrade. -->
<Product Id="$(var.ProductCode)" Name="Upgrade Test" Language="1033"
Version="$(var.ProductVersion)" Codepage="1252" Manufacturer="$(var.Manufacturer)"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,11 @@ comments: true
dblog_post_id: 15
---

<a href='http://www.infoq.com/presentations/Agile-in-Practice-Scott-Ambler'>
<a href='https://www.infoq.com/presentations/Agile-in-Practice-Scott-Ambler'>
![]({{ site.url }}/images/posts/2008/2008-09-07-agile-in-practice-what-is-actually-going-on-out-there/agile-in-practice.png)
</a>

[This](http://www.infoq.com/presentations/Agile-in-Practice-Scott-Ambler) presentation by [Scott Ambler](https://web.archive.org/web/20090227143945/http://www.ambysoft.com/scottAmbler.html) is incredible. It's full of amazing statistics.
[This](https://www.infoq.com/presentations/Agile-in-Practice-Scott-Ambler) presentation by [Scott Ambler](https://web.archive.org/web/20090227143945/https://www.ambysoft.com/scottAmbler.html) is incredible. It's full of amazing statistics.

For me, one thing was most impressive. I've gradually introduced XP in a critical project in my current company without any management support or agile rhetoric two years ago. I just did incremental change. But as soon as we started introducing agile, as in _Scrum_, we spent more times in meetings and had some major roadblocks, people problems, etc. I always wondered why the results were so different: Scott Ambler said out loud what I thought all along - we called the same things different names, which produced an impression of change without change. Some people who had a certain responsibility all along couldn't handle it once it was called out. Management needed to be convinced, which required a lot of translating from Russian into Scrum, etc.

Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ tags: [people]
comments: true
dblog_post_id: 16
---
I feel very inspired by [Raymond Chen](http://blogs.msdn.com/oldnewthing/)'s [The Old New Thing: Tales from the Interview](https://web.archive.org/web/20080914015852/http://blogs.msdn.com/oldnewthing/archive/2008/09/05/8925556.aspx) posts, so here's one from my own.
I feel very inspired by [Raymond Chen](https://blogs.msdn.com/oldnewthing/)'s [The Old New Thing: Tales from the Interview](https://web.archive.org/web/20080914015852/https://blogs.msdn.com/oldnewthing/archive/2008/09/05/8925556.aspx) posts, so here's one from my own.

There're two criteria often omitted in an a successful software developer candidate: doesn't drool and has a handshake. The second one is particularly important, it eliminates potentially weak candidates that can't make a decision. To which the following story ...

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ tags: [win32]
comments: true
dblog_post_id: 17
---
[This guy](https://web.archive.org/web/20090520025034/http://www.dreamcubes.com/blog) just saved me tons of time. I've spent two days on a handle leak that I eventually tracked down to an older version of log4cxx that we have been using. Upgrading to log4cxx 10 was really easy with pre-built binaries and Visual Studio projects that he provided.
[This guy](https://web.archive.org/web/20090520025034/https://www.dreamcubes.com/blog) just saved me tons of time. I've spent two days on a handle leak that I eventually tracked down to an older version of log4cxx that we have been using. Upgrading to log4cxx 10 was really easy with pre-built binaries and Visual Studio projects that he provided.

Thank you!

Loading

0 comments on commit 5c05ff1

Please sign in to comment.