<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Software &#8211; Roumazeilles.net</title>
	<atom:link href="https://www.roumazeilles.net/news/en/wordpress/category/science-and-geeks/software/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.roumazeilles.net/news/en/wordpress</link>
	<description>Technology opinions and others</description>
	<lastBuildDate>Thu, 12 Feb 2026 16:45:25 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	
	<item>
		<title>Structured vibe coding</title>
		<link>https://www.roumazeilles.net/news/en/wordpress/2026/02/12/structured-vibe-coding/</link>
					<comments>https://www.roumazeilles.net/news/en/wordpress/2026/02/12/structured-vibe-coding/#respond</comments>
		
		<dc:creator><![CDATA[Yves Roumazeilles]]></dc:creator>
		<pubDate>Thu, 12 Feb 2026 16:45:24 +0000</pubDate>
				<category><![CDATA[Artificial Intelligence]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[AI]]></category>
		<category><![CDATA[software design]]></category>
		<guid isPermaLink="false">https://www.roumazeilles.net/news/en/wordpress/?p=16594</guid>

					<description><![CDATA[I wanted to understand how &#8220;vibe coding&#8221; (the act of writing software mostly through prompting an LLM AI assistant). But I also wanted to take a step back and ask it to support a more structured approach like in organized/serious software development (not only running into &#8220;please, write me a Mario Bros clone&#8220;). So, I [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>I wanted to understand how &#8220;vibe coding&#8221; (the act of writing software mostly through prompting an LLM AI assistant). But I also wanted to take a step back and ask it to support a more structured approach like in organized/serious software development (not only running into &#8220;<em>please, write me a Mario Bros clone</em>&#8220;).</p>



<p>So, I started asking a few questions and driving Claude into something more organized. Here is the content of our exchange and what it produced.</p>



<p><a href="https://claude.ai/share/def36174-5747-4be0-af35-2bc4dc1068c7">https://claude.ai/share/def36174-5747-4be0-af35-2bc4dc1068c7</a></p>



<p>I&#8217;m open to your suggestions about why it is OK, why it&#8217;s not, and how to lead to a better approach.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.roumazeilles.net/news/en/wordpress/2026/02/12/structured-vibe-coding/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>AI prompt: First steps in German</title>
		<link>https://www.roumazeilles.net/news/en/wordpress/2025/05/06/ai-prompt-starting-in-german/</link>
					<comments>https://www.roumazeilles.net/news/en/wordpress/2025/05/06/ai-prompt-starting-in-german/#respond</comments>
		
		<dc:creator><![CDATA[Yves Roumazeilles]]></dc:creator>
		<pubDate>Tue, 06 May 2025 07:40:52 +0000</pubDate>
				<category><![CDATA[Artificial Intelligence]]></category>
		<category><![CDATA[Culture]]></category>
		<category><![CDATA[AI]]></category>
		<category><![CDATA[German]]></category>
		<category><![CDATA[Germany]]></category>
		<category><![CDATA[language]]></category>
		<category><![CDATA[LLM]]></category>
		<category><![CDATA[prompt]]></category>
		<guid isPermaLink="false">https://www.roumazeilles.net/news/en/wordpress/?p=16525</guid>

					<description><![CDATA[For the last two years, I have been learning German. My background in English is probably helping me, but it still is a full-time job. I need to be thorough and maintain effort. So, I settled on a few tools to assist me. But I would like to share with you how I use Artificial [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>For the last two years, I have been learning German. My background in English is probably helping me, but it still is a full-time job. I need to be thorough and maintain effort. So, I settled on a few tools to assist me. But I would like to share with you how I use Artificial Intelligence (AI) to support myself in this learning task.</p>



<p>The general aim is to ask an AI chat to assist me with translating vocabulary to enhance my store of German words. But this language has some peculiarities, and  I want to follow them and integrate their understanding. For example, German has somewhat complex verb tenses and words follow genres (masculine, feminine, or neutral), often different from what we know in other languages (English, French, etc.). So, I aimed specifically at supporting this.</p>



<p>How? I chose an AI chat (Google Gemini &#8211; using <em>Gemini 2.0 Flash</em> and/or <em>Gemini 2.5 Flash (experimental)</em>) because its answers are aligning near perfectly with the complex prompt I built (see below). Others may be able to do similarly, but DeepSeek R1 is far too slow (and I don&#8217;t use the &#8220;chain of thought&#8221; which may be a strength in other contexts), Llama 3.x &#8211; surprisingly &#8211; fails to stick to the <em>rules</em> I describe in my prompt. Another Large Language Model (LLM) AI model may be good. But I would recommend you test it before using it extensively.</p>



<p>So, here is the prompt I decided to use (it took a little bit of refining to get to his efficiency), and I invite you to re-use it or share it.</p>



<span id="more-16525"></span>



<pre class="wp-block-code"><code>Hello Hilfe,
I need your help to learn German and - mostly - to improve my vocabulary while I build flashcards. Your role is to translate to German some English words I give you. But I have some specific restictions on the way you must answer with the appropriate sequences.
For a verb, on a single line, give the infinitive, then the third person of the present indicative, then the third person of the preterite, then the past participle (no need to include articles).
For a noun, on a single line, give the singular and then the plural, including the article (which identifies the gender of the noun).
For an adjective, on a single line, give the adjective, then the comparative form, then the superlative form.
There's no need to dwell on proper nouns (they're probably the result of a typing error); Simply translate where possible.
The order will suffice to describe (no need to specify or remind each time what the elements of the answer are). But the sequence of forms requested must appear with each form separated by commas, without adding a period at the end of the line. 
In the case of multiple translations, it's okay to separate the meanings, clarifying the context, but respecting the translation rules (each meaning with its own separate line).
In the case where I indicate a German word, there's no need to translate, but to construct the answer as for a translation (with the corresponding sequence). For example, a verb will be conjugated according to the above rule.</code></pre>



<p>So, when I type:</p>



<pre class="wp-block-code"><code>push</code></pre>



<p>It will answer:</p>



<pre class="wp-block-code"><code>drücken, er drückt, er drückte, gedrückt (to push, to press)
schieben, er schiebt, er schob, geschoben (to shove, to push)
der Stoß, die Stöße (the push, the shove)</code></pre>



<p>If I type:</p>



<pre class="wp-block-code"><code>Morning</code></pre>



<p>Here comes the answer:</p>



<pre class="wp-block-code"><code>der Morgen, die Morgen</code></pre>



<p>I hope that it will help you to improve your vocabulary. It does not help for other aspects (grammar, pronunciation, accent) but it supports my progress.</p>



<p>Have fun with Deutsch!</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.roumazeilles.net/news/en/wordpress/2025/05/06/ai-prompt-starting-in-german/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Theme security for a WordPress site</title>
		<link>https://www.roumazeilles.net/news/en/wordpress/2024/04/28/theme-security-for-a-wordpress-site/</link>
					<comments>https://www.roumazeilles.net/news/en/wordpress/2024/04/28/theme-security-for-a-wordpress-site/#respond</comments>
		
		<dc:creator><![CDATA[Yves Roumazeilles]]></dc:creator>
		<pubDate>Sun, 28 Apr 2024 09:45:58 +0000</pubDate>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Create a web site]]></category>
		<category><![CDATA[New web site]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[web site]]></category>
		<guid isPermaLink="false">https://www.roumazeilles.net/news/en/wordpress/?p=16268</guid>

					<description><![CDATA[It is a fact of life on the Internet that hackers are roaming continuously in search for a chance to apply their knowledge to abuse your web site. Recently, I had the occasion of noticing an opportunity that I should not have let happening on Roumazeilles.net My web site is using WordPress as the &#8220;engine&#8221; [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>It is a fact of life on the Internet that hackers are roaming continuously in search for a chance to apply their knowledge to abuse your web site. Recently, I had the occasion of noticing an opportunity that I should not have let happening on Roumazeilles.net</p>



<p>My web site is using WordPress as the &#8220;engine&#8221; to build a convenient and efficient site. WordPress happens to be using &#8220;themes&#8221; to appropriately display the contents (that is what is differentiating each WP website from the others). This capacity has helped develop a thriving community of themes, some being free, some being purchased.</p>



<p>The main trouble is that themes like any other piece of software are susceptible to bugs and could be exploited by hackers. I recently noticed that my (previous) theme was clearly outdated (not updated in the last 24 months) and including some <em>known</em> security issues leaving it open to abuse.</p>



<figure class="wp-block-pullquote"><blockquote><p>Where to check your web site?</p><cite><a href="https://www.immuniweb.com/websec/">https://www.immuniweb.com/websec/</a></cite></blockquote></figure>



<p>Lesson learned: Do not use any piece of software (including a WP theme) if it is not actively supported.</p>



<p>Application: I decided to drop the free (and unsafe) theme I was using. I swithed other to one of the &#8220;official&#8221; themes from WordPress.org. And I am learning to configure it properly. Hence the changes you can currently observe.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.roumazeilles.net/news/en/wordpress/2024/04/28/theme-security-for-a-wordpress-site/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Artificial Intelligence to upscale photographs</title>
		<link>https://www.roumazeilles.net/news/en/wordpress/2023/06/26/artificial-intelligence-to-upscale-photographs/</link>
					<comments>https://www.roumazeilles.net/news/en/wordpress/2023/06/26/artificial-intelligence-to-upscale-photographs/#respond</comments>
		
		<dc:creator><![CDATA[Yves Roumazeilles]]></dc:creator>
		<pubDate>Mon, 26 Jun 2023 20:06:24 +0000</pubDate>
				<category><![CDATA[Artificial Intelligence]]></category>
		<category><![CDATA[Windows 10]]></category>
		<category><![CDATA[AI]]></category>
		<category><![CDATA[Dall-E]]></category>
		<category><![CDATA[EasyDiffusion]]></category>
		<category><![CDATA[ESRGAN]]></category>
		<category><![CDATA[Photo]]></category>
		<category><![CDATA[photography]]></category>
		<category><![CDATA[Photoshop]]></category>
		<category><![CDATA[pixel]]></category>
		<category><![CDATA[StableDiffusion]]></category>
		<category><![CDATA[Topaz]]></category>
		<category><![CDATA[upscaling]]></category>
		<guid isPermaLink="false">https://www.roumazeilles.net/news/en/wordpress/?p=16242</guid>

					<description><![CDATA[Did you notice that I am interested in/attracted by Artificial Intelligence? Among various tests, here is a nice little resulting application for digital photographers. I finally found how to significantly (x4) increase the resolution of my photographic pictures (upscaling) without losing details. An AI allowed me to recreate the &#8220;missing pixels&#8221; to build a picture [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>Did you notice that I am interested in/attracted by Artificial Intelligence? Among various tests, here is a nice little resulting application for digital photographers. I finally found how to significantly (x4) increase the resolution of my photographic pictures (upscaling) without losing details.</p>



<p>An AI allowed me to recreate the &#8220;missing pixels&#8221; to build a picture several times larger than the original; ideal for an ultra-large print.</p>



<p>The full description is on YLovePhoto: &#8220;<a href="https://www.ylovephoto.com/en/2023/06/29/upscaling-a-photo-with-free-ai/" data-type="URL" data-id="https://www.ylovephoto.com/en/2023/06/29/upscaling-a-photo-with-free-ai/">Upscaling a photo with free AI</a>&#8220;.</p>



<p></p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.roumazeilles.net/news/en/wordpress/2023/06/26/artificial-intelligence-to-upscale-photographs/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Install LLAMA under Windows</title>
		<link>https://www.roumazeilles.net/news/en/wordpress/2023/03/31/install-llama-under-windows/</link>
					<comments>https://www.roumazeilles.net/news/en/wordpress/2023/03/31/install-llama-under-windows/#respond</comments>
		
		<dc:creator><![CDATA[Yves Roumazeilles]]></dc:creator>
		<pubDate>Fri, 31 Mar 2023 17:28:47 +0000</pubDate>
				<category><![CDATA[Artificial Intelligence]]></category>
		<category><![CDATA[Windows 10]]></category>
		<category><![CDATA[AI]]></category>
		<category><![CDATA[ChatGPT]]></category>
		<category><![CDATA[LLaMA]]></category>
		<category><![CDATA[LLM]]></category>
		<guid isPermaLink="false">https://www.roumazeilles.net/news/en/wordpress/?p=16224</guid>

					<description><![CDATA[I just wanted to start playing with something similar to ChatGPT. I have a Windows 10 PC based on Intel i9-13900K (so pretty much top of the line in terms of performance both for single core and for multicore) and 64 GB of DRAM (a bit over what most people have, but I understood from the [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>I just wanted to start playing with something similar to ChatGPT. I have a Windows 10 PC based on Intel i9-13900K (so pretty much top of the line in terms of performance both for single core and for multicore) and 64 GB of DRAM (a bit over what most people have, but I understood from the beginning that those LLM also need colossal memory to store their parameters and to run).</p>



<p>So, here is how to proceed (thanks to the precious information from <a href="https://mirror.xyz/xanny.eth/TBgwcBOoP9LZC6Mf570fG8VvZWhEn_uWZPHy3axIpsI">Xanny.eth</a>).</p>



<h2 class="wp-block-heading">WSL and Linux environment</h2>



<p>Install and setup WSL, by opening a PowerShell and typing:</p>



<pre class="wp-block-code"><code>wsl --install</code></pre>



<p>It will take a few minutes to set up. But it&#8217;s straightforward and needs no input. Just need to reboot once at the end.</p>



<p>Installing Ubuntu 22 LTS on the Windows PC. It is a free application from the Microsoft Store which should install right away.</p>



<p>When this is done, launch Ubuntu from the start menu. It will open a terminal window and request a login and password. You should enter them (and not forget them).</p>



<h2 class="wp-block-heading">LLaMA dependencies</h2>



<p>If it is not open, open a Ubuntu terminal window.</p>



<pre class="wp-block-code"><code>sudo apt-get update
sudo apt install make cmake build-essential python3 python3-pip git unzip</code></pre>



<p>Then,</p>



<pre class="wp-block-code"><code>python3 -m pip install torch numpy sentencepiece</code></pre>



<p>You now have a full set of background dependencies in place.</p>



<h2 class="wp-block-heading">Building LLaMA itself</h2>



<p>It is quite simple: Type the following:</p>



<pre class="wp-block-code"><code>git clone https://github.com/ggerganov/llama.cpp
cd llama.cpp
make</code></pre>



<p>This should be it.</p>



<h2 class="wp-block-heading">Training data parameters</h2>



<p>The real difficulty is getting the parameters (the training data). The difficulty comes from two aspects:</p>



<ol class="wp-block-list">
<li>The larger the training data you want to use, the more memory you will need to run it. The <a href="https://huggingface.co/chavinlo/alpaca-native">alpaca-native-weights</a> (apparently the more powerful ones easily available &#8211; about the same quality as ChatGPT 3) require more than 16GB of DRAM (I observed a 32&nbsp;GB DRAM use when running them with a bunch of other things on my computer, like a couple of browsers, a mailer program, etc.)</li>



<li>The <a href="https://huggingface.co/chavinlo/alpaca-native">alpaca-native-weights</a> are about 7 billion parameters (a 4+GB file to download). But they keep moving because they appear to be subject to repeated DMCA notices (the exact license of this file seems&#8230; complicated; Quite probably open source, but this is being challenged by Meta and others). So, the best you can do is to go to <a href="https://pastebin.com/z5A33Umd">Pastebin</a> to get the BitTorrent magnet and use it to download the file.</li>
</ol>



<p>Then, the ggml-alpaca-7b-q4.bin file needs to be delivered to the llama.cpp directory.</p>



<h2 class="wp-block-heading">Running LLaMA</h2>



<p>Let the drums roll: You only have to run the command line in Ubuntu:</p>



<pre class="wp-block-code"><code>./main --color -i -ins -n 512 -p "You are a helpful AI who will assist, provide information, answer questions, and have conversations." -m ggml-alpaca-7b-native-q4.bin</code></pre>



<p>Here is John Smith your personal AI chat assistant.</p>



<h2 class="wp-block-heading">A few more recommendations</h2>



<p>I noticed a few things that you may want to play with after the first run.</p>



<p>The -p option (followed by a text string) may be critical because it is setting up the background environment of your chat AI. This is an initializing prompt, not visible to the user, but deeply influencing the rest. For example, it is similar to <a href="https://arstechnica.com/information-technology/2023/02/ai-powered-bing-chat-spills-its-secrets-via-prompt-injection-attack/">what Microsoft or OpenAI apply beforehand</a> in ChatGPT or Bing, in order to &#8220;give it a personality&#8221; or &#8220;to censor it&#8221;. You can play with this to freely censor your AI, or give it added freedom.</p>



<p>The -n 512 option has an influence on the depth of the prediction LLaMA will use. It may make it better at writing (or not) at the possible expense of CPU power.</p>



<p>The -t 32 (the default value) option allows defining the number of threads used by LLaMA computations. I recommend setting it to the number of threads/cores of your CPU in order to avoid spending useless efforts.</p>



<p></p>



<p></p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.roumazeilles.net/news/en/wordpress/2023/03/31/install-llama-under-windows/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Evolution to favor user privacy</title>
		<link>https://www.roumazeilles.net/news/en/wordpress/2022/10/10/evolution-to-favor-user-privacy/</link>
					<comments>https://www.roumazeilles.net/news/en/wordpress/2022/10/10/evolution-to-favor-user-privacy/#respond</comments>
		
		<dc:creator><![CDATA[Yves Roumazeilles]]></dc:creator>
		<pubDate>Mon, 10 Oct 2022 20:06:26 +0000</pubDate>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Google Analytics]]></category>
		<category><![CDATA[privacy]]></category>
		<category><![CDATA[privacy policy]]></category>
		<guid isPermaLink="false">https://www.roumazeilles.net/news/en/wordpress/?p=16190</guid>

					<description><![CDATA[After the recent information updates from CNIL and other European privacy-supporting public agencies (in Austria, in Italy, etc.), it was becoming clear that the use of Google Analytics to track visitor statistics on our web site was non-compliant with parts of the requirements of GDPR (specifically but not only, because Google data is stored in [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>After the recent information updates from CNIL and other European privacy-supporting public agencies (in Austria, in Italy, etc.), it was becoming clear that the use of Google Analytics to track visitor statistics on our web site was non-compliant with parts of the requirements of GDPR (specifically but not only, because Google data is stored in the US and not in Europe as legally required).</p>



<p>So, we decided to change the web site (this is actually an underground and near-invisible activity, I have to admit) to remove Google Analytics and start using a solution fuly integrated into the web site itself (with possibly private data being stored exclusively in France). Now, we use the <a href="https://matomo.org/free-software/">Matomo</a> open-source solution.</p>



<p>In the coming weeks, the web pages mentionning the use of Google Analytics will also be manually updated to reflect this change.</p>



<p>There should be no impact on your daily navigation here. But, feel free to <a href="https://www.roumazeilles.net/news/en/wordpress/contact/" data-type="page" data-id="14487">inform us </a>if you observe some incident possibly related to this change.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.roumazeilles.net/news/en/wordpress/2022/10/10/evolution-to-favor-user-privacy/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Raspberry Pi as a local DNS/DHCP server</title>
		<link>https://www.roumazeilles.net/news/en/wordpress/2020/11/23/raspberry-pi-as-a-local-dns-dhcp-server/</link>
					<comments>https://www.roumazeilles.net/news/en/wordpress/2020/11/23/raspberry-pi-as-a-local-dns-dhcp-server/#respond</comments>
		
		<dc:creator><![CDATA[Yves Roumazeilles]]></dc:creator>
		<pubDate>Mon, 23 Nov 2020 19:21:56 +0000</pubDate>
				<category><![CDATA[IPv6]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Routers & networks]]></category>
		<category><![CDATA[DHCP]]></category>
		<category><![CDATA[DNS]]></category>
		<category><![CDATA[dnsmasq]]></category>
		<category><![CDATA[filter]]></category>
		<category><![CDATA[IPv4]]></category>
		<category><![CDATA[proxy]]></category>
		<category><![CDATA[Raspberry Pi]]></category>
		<guid isPermaLink="false">https://www.roumazeilles.net/news/en/wordpress/?p=15038</guid>

					<description><![CDATA[For a local network supporting a small company or an Internet-active family, it is always possible to rely totally on an Internet Service Provider (ISP) which will provide basic network services straight from the Internet box/router (fibre or ADSL). But, if &#8211; like me &#8211; you want to have more flexibility, you&#8217;d prefer to setup [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>For a local network supporting a small company or an Internet-active family, it is always possible to rely totally on an Internet Service Provider (ISP) which will provide basic network services straight from the Internet box/router (fibre or ADSL). But, if &#8211; like me &#8211; you want to have more flexibility, you&#8217;d prefer to setup your own services.</p>



<p>I noticed the market emergence of nano-computers like Android boxes or Raspberry Pi which allow to easily setup services that may have been prohibitely expensive in the past.</p>



<p>So, I decided to pruchase a Raspberry Pi 3 B+ (a rather cheap network little box, with low power consumption, able to stay online permanently, and easily configurable). I wanted to start by deploying the minimal network services to give me maximum agency.</p>



<p>Minimum feature set included:</p>



<ul class="wp-block-list"><li>A <strong>DHCP </strong>server (to assign IP addresses on the local network with ability to fix some of them in a static list, for easier management)</li><li>A <strong>DNS </strong>server providing<ul><li>DNS request cache (to speed up the overall Internet access of my Internet users)</li><li>Delivery of local network names</li><li>Capacity to allow future DNS filtering (I don&#8217;t care much about adult-content filtering, but I&#8217;d like to stop some of the phishers, even if these two activities are technically identical)</li></ul></li></ul>



<p>In the future, some more services may come handy (nothing of this has been studied here):</p>



<ul class="wp-block-list"><li>An NTP server (for time)</li><li>A WINS Windows names server</li></ul>



<h2 class="wp-block-heading">Comparison</h2>



<p>As a matter of fact, I noticed that two serveurs seemed able to simultanesouly provide DHCP and DNS: <a href="https://nlnetlabs.nl/projects/unbound/about/">Unbound</a> and <a href="https://wiki.debian.org/dnsmasq">dsnmasq</a>.</p>



<p>Unbound highlights:</p>



<ul class="wp-block-list"><li>Lightweight server</li><li>DNSSEC support</li><li>rather security-oriented</li><li>No DNS authoritative server (but able to handle a local domain)</li></ul>



<p>dnsmasq highlights:</p>



<ul class="wp-block-list"><li> Lightweight server</li><li>DNSSEC support</li><li>DHCP and DNS are integrated in the same server</li><li>May use /etc/hosts to feed DNS</li><li>No DNS recursive server (only forward to an authoritative/recursive like 8.8.8.8 or 9.9.9.9 or your ISP DNS server)</li><li>No DNS authoritative server (but able to handle a local domain) </li></ul>



<p>I chose dnsmasq, mainly because of the DNS + DHCP integration.</p>



<h2 class="wp-block-heading">Some surprising discoveries</h2>



<p>Première information vite découverte : les serveurs NAS Synology sont tout à fait incompatibles avec le filtrage de DNS de CleanBrowsing. Celui-ci compte synology.me (service nécessaire pour le DDNS de Synology) dans les domaines à risque. De nombreux services du NAS cessent immédiatement de fonctionner.</p>



<p>Je n&#8217;ai pas vérifié mais il est probable que de nombreux autres services DDNS (Dynamic DNS) soient black-listés pour les mêmes raisons : devant le nombre de petits serveurs Synology (ou autres) mal configurés, ces DDNS renvoient sans doute vers une forte proportion de domaines qui ont été pris en otage par les hackers.</p>



<p>Il faut donc pouvoir gérer cela plus finement si vous avez vous-même votre propre NAS Synology (et sans doute d&#8217;autres marques).</p>



<h2 class="wp-block-heading">Observations</h2>



<p>After a few months of  dnsmasq use on Rapsberry Pi, it is time to comment and share my experience.</p>



<p>First, this worked really well. Even if I had one case of locked down DHCP server (no warning, no error, but killed). I tried finding why, but it was far easier to reboot the server box (On-Off switch) to restore the service. Of course, a few minutes of digging into logs did bring me some worried looks from another network user&#8230;</p>



<p>The DNS filter setup to remove access to some risky domains work perfectly well. But, I have to admit that nothing seems to have triggered that (except my tests). Since this is not the only security barrier on my network, this may be OK. For the record, here is the filter creation script I use:</p>



<pre class="wp-block-preformatted">#!/bin/sh
#Dated 2020-11-10 1.0 Addition of --quiet to wget (to reduce clutter to /var/mail/pi)
#                     *** STABLE RELEASE ***

cd /var/lib/work

#Get anti-phishing filter lists from Internet
wget -q -O ./isc-low.txt 'https://isc.sans.edu/feeds/suspiciousdomains_Low.txt'
wget -q -O ./isc-med.txt 'https://isc.sans.edu/feeds/suspiciousdomains_Medium.txt'
wget -q -O ./isc-hig.txt 'https://isc.sans.edu/feeds/suspiciousdomains_High.txt'
wget -q -O ./yoyo.dnsmasq.txt 'https://pgl.yoyo.org/adservers/serverlist.php?hostformat=dnsmasq&amp;hostformat=nohtml&amp;showintro=0&amp;mimetype=plaintext'
#Remodel the lists into DNSmasq filters
catcherIP='192.168.1.250'
inputfile="./isc-med.txt"
tmpfile="/tmp/.adlist.$$"
tmpconffile="/tmp/.dnsmasq.conf.$$"
configfile="/etc/dnsmasq.filter.conf"
configheader="/etc/dnsmasq.filter.header"

#Start with putting our own header
    [ -f "$configheader" ] &amp;&amp; cat $configheader &gt;&gt; $tmpconffile
#check if TmpFile could be init'd with header
if [ ! -s $tmpconffile ]
then
    echo "temp fil '$tmpconffile' could not be found or is empty; quitting"
    exit
fi
#Remove list headers
cat $inputfile | grep -v "^#" | grep -v "^Site$" &gt; $tmpfile
#Buid list to DNSmasq format, and add it to the file
sed "s/(.*)/address=\/\1\/${catcherIP}/" $tmpfile &gt;&gt; $tmpconffile
#Move the final list to destination
sudo cp $tmpconffile $configfile</pre>



<p>One of the advantages of this server is its speed. I may have been slightly worried (or attentive) before knowing the Raspberry Pi, but there was no reason. Maybe because of the low workload (despite an HTTP server, some distant connexions, and a few local scripts) and because of the good power developed by the CPU, everything is fine and dandy even when a dozen clients are pounding the DNS server (the iPhones are quite insistant in using the netowrk on a continuous basis)).</p>



<p>dnsmasq is perfectly able t manageIPv6 DHCP, and correspondingIPv6 DNS. Documentation about this is terse (if not simply lacking), but it works well and I learned quite a few things. The Raspberry Pi was so reliable that it was IPv6 proxy during some of my tests without any perceptible impact. (I was rightfully impressed).</p>



<p>After initially using dynamic address allocation, I moved the DHCP server into a nearly exclusively static configuration (my own choice in order to have easier local client identification). No big deal, neither in IPv4 nor in IPv6.</p>



<p>Conclusion: Totally positive.</p>



<p>In the future, I may be tempted to deploy more powerful servers for DHCP and DNS for a wider support (maybe or maybe not) and to try a network spy like SNORT or SURICATA. But this is a completely different story. And, in this case, I may be tempted to go to a really powerful solution (I have an Avenger96 under initial trial, but its software support seems to be a real mess).</p>



<h2 class="wp-block-heading">A few other interesting links</h2>



<ul class="wp-block-list"><li>A few other solutions for a DHCP server:<ul><li><a href="https://www.isc.org/dhcp-tools/"></a><a href="https://www.linux.com/tutorials/dnsmasq-easy-lan-name-services/">DNSmasq installation</a> (DHCP only)</li><li>Dragon: <a href="https://blogging.dragon.org.uk/howto-setup-dnsmasq-as-dns-dhcp/">DNSmasq installation</a> (DHCP + DNS)</li><li>Instructables: <a href="https://www.instructables.com/id/Running-your-own-DNSDHCP-Server-the-Easy-way/">installation for DNSmasq</a> (DHCP &amp; DNS)  </li><li><a href="https://wiki.debian.org/DHCP_Server">ISC-DHCP server on Debian</a></li><li><a href="https://www.tecmint.com/install-dhcp-server-in-ubuntu-debian/">ISC-DHCP server on Ubuntu</a></li><li><a href="https://wiki.debian.org/DHCP_Server">Tools designed to work with ISC-DHCP</a></li><li><a href="https://wiki.debian.org/DHCP_Server">Fast instructions for installing DHCP, DNS, </a><a href="http://www.raspberry-pi-geek.com/Archive/2014/03/Setting-up-Raspberry-Pi-as-a-DHCP-NTP-and-DNS-server">and NTP on Raspberry Pi</a></li></ul></li><li>Some data about installation of another DNS server:<ul><li><a href="https://www.digitalocean.com/community/tutorials/how-to-configure-bind-as-a-private-network-dns-server-on-debian-9">BIND local-mode DNS server on Debian 9</a></li><li><a href="https://www.digitalocean.com/community/tutorials/how-to-configure-bind-as-an-authoritative-only-dns-server-on-ubuntu-14-04">BIND authoritative DNS server on Ubuntu</a></li><li><a href="https://www.digitalocean.com/community/tutorials/how-to-configure-bind-as-a-caching-or-forwarding-dns-server-on-ubuntu-14-04">BIND &#8220;caching&#8221; or &#8220;forward-only&#8221; DNS server on Ubuntu</a></li></ul></li><li>DNS filters:<ul><li><a href="https://www.gmass.co/blog/domain-blacklists-comprehensive-guide/">THE guide on cleaning DNS from public domain lists</a></li></ul></li><li>Setup of a LaSynology NAS or router:<ul><li><a href="https://www.synology.com/fr-fr/knowledgebase/DSM/tutorial/Network/How_to_set_up_your_domain_with_Synology_DNS_Server">Configuration of a DNS server on DSM</a></li></ul></li><li>Server comparisons:<ul><li><a href="https://computingforgeeks.com/bind-vs-dnsmasq-vs-powerdns-vs-unbound/">BIND vs. dnsmasq vs PowerDNS vs Unbound</a><br><br> <br><br> </li></ul></li></ul>



<p></p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.roumazeilles.net/news/en/wordpress/2020/11/23/raspberry-pi-as-a-local-dns-dhcp-server/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>More technical news about our web site hack</title>
		<link>https://www.roumazeilles.net/news/en/wordpress/2018/11/11/more-technical-news-about-our-web-site-hack/</link>
					<comments>https://www.roumazeilles.net/news/en/wordpress/2018/11/11/more-technical-news-about-our-web-site-hack/#respond</comments>
		
		<dc:creator><![CDATA[Yves Roumazeilles]]></dc:creator>
		<pubDate>Sun, 11 Nov 2018 12:48:06 +0000</pubDate>
				<category><![CDATA[Security]]></category>
		<category><![CDATA[Tech]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[GDPR]]></category>
		<category><![CDATA[privacy]]></category>
		<guid isPermaLink="false">https://www.roumazeilles.net/news/en/wordpress/?p=14719</guid>

					<description><![CDATA[After a more thorough analysis, I believe that I have now a clear image of what happened to . It appears that a hacker introduced itself into our web site through an insecure WordPress plugin. The security defect has been corrected relatively quickly, but it left a wide open gap during a few days. The [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>After a more thorough analysis, I believe that I have now a clear image of what happened to Roumazeilles.net.</p>
<p>It appears that a hacker introduced itself into our web site through an insecure WordPress plugin. The security defect has been corrected relatively quickly, but it left a wide open gap during a few days. The hacker was able to</p>
<ol>
<li>create several privileged access points into the web site (administrator accounts).</li>
<li>modify posts and pages to add a script susceptible to bring a malware infection (that I could not more precisely identify).</li>
<li>modify the web site to point back to another infected web site.</li>
<li>modify the web site to create himself an additional backdoor entry point.</li>
</ol>
<p>this most probably happened during the Friday November 9th night (or very early on Saturday November 10th). It hit four of my web sites in a row (on four other sites I caught the infection before it could become extensive or dangerous for the users/visitors).</p>
<p>The corrections I implemented allow me to assure that the incident is now (Sunday November 11th at noon) closed for all four infected web sites.</p>
<p>The consequences for you, the visitors:</p>
<ol>
<li>it is possible (though quite unprobable) that some <a href="https://www.roumazeilles.net/news/en/wordpress/data/">personal data</a> have been taken, but it was not a clear objective of the hacker.</li>
<li>all users with an account on the web site have been informed, their passwords force-modified to a safer value (it appears nobody had really fragile or re-used password &#8211; my advice: never re-use one web site password on another web site).</li>
<li>during a few tens of hours, Roumazeilles.net was used to propagate one or more malwares to visitors of our pages and posts. My advice: Immediately check your computer with a good anti-virus.</li>
</ol>
<p>I hope (and I believe) that this is all.</p>
<p>&nbsp;</p>
<p><a href="https://blog.sucuri.net/2018/11/erealitatea-net-hack-corrupts-websites-with-wp-gdpr-compliance-plugin-vulnerability.html">Technical details</a> on this specific attack (we were not alone in the list of victimized web sites).</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.roumazeilles.net/news/en/wordpress/2018/11/11/more-technical-news-about-our-web-site-hack/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>How to solve an HTTP error 500?</title>
		<link>https://www.roumazeilles.net/news/en/wordpress/2018/11/11/how-to-solve-an-http-error-500/</link>
					<comments>https://www.roumazeilles.net/news/en/wordpress/2018/11/11/how-to-solve-an-http-error-500/#respond</comments>
		
		<dc:creator><![CDATA[Yves Roumazeilles]]></dc:creator>
		<pubDate>Sun, 11 Nov 2018 11:23:56 +0000</pubDate>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[WordPress]]></category>
		<guid isPermaLink="false">https://www.roumazeilles.net/news/en/wordpress/?p=14716</guid>

					<description><![CDATA[This appears to be one of the most imprecise errors a web server can through at you. More or less, it means &#8220;I tried but I can&#8217;t serve and I can&#8217;t help with more precise information&#8221;. People and forums tend to say that this may be related to database issues or .htaccess issues. But not [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>This appears to be one of the most imprecise errors a web server can through at you. More or less, it means &#8220;I tried but I can&#8217;t serve and I can&#8217;t help with more precise information&#8221;. People and forums tend to say that this may be related to database issues or .htaccess issues. But not much help to be found.</p>
<p>My recent experience has led me to find useful data, mostly under the form of checklists of things to verify on the web site when looking for the origin of such an error. So, I recommend you try relying on these resources:</p>
<ul>
<li><a href="https://gitlab.com/sdeb/web/snippets/1748266">WordPress erreur 500</a> (by Kyodev, in French)</li>
<li><a href="https://sucuri.net/guides/how-to-clean-hacked-wordpress">How to clean a WordPress Hack</a> (by Sucuri, also provider of security services that I did not evaluate myself)</li>
<li><a href="https://www.elegantthemes.com/blog/tips-tricks/how-to-fix-the-500-internal-server-error-on-your-wordpress-website">How ot fix the 500 internal server error on your WordPress website</a> (by Lyn Wildwood,)</li>
<li><a href="https://wpfixit.com/wordpress-500-internal-server-error/">Damm you WordPress 500 Internal Server Error</a></li>
</ul>
]]></content:encoded>
					
					<wfw:commentRss>https://www.roumazeilles.net/news/en/wordpress/2018/11/11/how-to-solve-an-http-error-500/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Hacked web site</title>
		<link>https://www.roumazeilles.net/news/en/wordpress/2018/11/11/hacked-wbe-site/</link>
					<comments>https://www.roumazeilles.net/news/en/wordpress/2018/11/11/hacked-wbe-site/#respond</comments>
		
		<dc:creator><![CDATA[Yves Roumazeilles]]></dc:creator>
		<pubDate>Sun, 11 Nov 2018 10:17:11 +0000</pubDate>
				<category><![CDATA[Security]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[GDPR]]></category>
		<category><![CDATA[privacy]]></category>
		<category><![CDATA[privacy policy]]></category>
		<guid isPermaLink="false">https://www.roumazeilles.net/news/en/wordpress/?p=14709</guid>

					<description><![CDATA[So, it had to happen one day. has been hacked. Nothing very terrible, but a few bad hours for an administrator. The site to be rebuilt in a matter of hours. Passwords to be changed. Several hours lost for nothing. There wasn&#8217;t much to steal (the users are not very many). But it is impossible [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>So, it had to happen one day. <b>Roumazeilles.net</b> has been hacked. Nothing very terrible, but a few bad hours for an administrator.</p>
<ol>
<li>The site to be rebuilt in a matter of hours.</li>
<li>Passwords to be changed.</li>
<li>Several hours lost for nothing.</li>
</ol>
<p>There wasn&#8217;t much to steal (the users are not very many). But it is impossible to know with certainty if hackers did not leave with a copy of the emails and associated user names. If you want to know what kind of data may have been revealed, you may check it on <a href="https://www.roumazeilles.net/news/en/wordpress/data/">personal data summary page</a>.</p>
<p>Apparently, the hacker(s) was (were) more interested in switching the user traffic toward a malware-loaded web site in a foreign country (probably hacked too) under the name of a little blue pony. If you remember being directed there, take time to check your computer with a good anti-virus software.</p>
<p>Feel free to <a href="https://www.roumazeilles.net/news/en/wordpress/contact/">contact me</a> if you have questions.</p>
<p>&nbsp;</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.roumazeilles.net/news/en/wordpress/2018/11/11/hacked-wbe-site/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Ikea-style instructions for computer algorithms</title>
		<link>https://www.roumazeilles.net/news/en/wordpress/2018/04/18/ikea-style-instructions-for-computer-algorithms/</link>
					<comments>https://www.roumazeilles.net/news/en/wordpress/2018/04/18/ikea-style-instructions-for-computer-algorithms/#respond</comments>
		
		<dc:creator><![CDATA[Yves Roumazeilles]]></dc:creator>
		<pubDate>Wed, 18 Apr 2018 07:36:54 +0000</pubDate>
				<category><![CDATA[Sciences]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[algorithm]]></category>
		<guid isPermaLink="false">https://www.roumazeilles.net/news/en/wordpress/?p=14622</guid>

					<description><![CDATA[Designed to help in a computer science and algorithms teaching course, these are great ideas of algorithm descriptions using only simplified drawings and no word (styled like Ikea assembly instructions). I love them. Idea-instructions.]]></description>
										<content:encoded><![CDATA[<p>Designed to help in a computer science and algorithms teaching course, these are great ideas of algorithm descriptions using only simplified drawings and no word (styled like Ikea assembly instructions).</p>
<p>I love them. <a href="https://idea-instructions.com/">Idea-instructions</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.roumazeilles.net/news/en/wordpress/2018/04/18/ikea-style-instructions-for-computer-algorithms/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>GDPR: Some helpful documentation</title>
		<link>https://www.roumazeilles.net/news/en/wordpress/2018/04/13/gdpr-some-helpful-documentation/</link>
					<comments>https://www.roumazeilles.net/news/en/wordpress/2018/04/13/gdpr-some-helpful-documentation/#respond</comments>
		
		<dc:creator><![CDATA[Yves Roumazeilles]]></dc:creator>
		<pubDate>Fri, 13 Apr 2018 20:28:52 +0000</pubDate>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Create a web site]]></category>
		<category><![CDATA[HTML and CSS]]></category>
		<category><![CDATA[Liberties]]></category>
		<category><![CDATA[New web site]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[GDPR]]></category>
		<guid isPermaLink="false">https://www.roumazeilles.net/news/en/wordpress/?p=14617</guid>

					<description><![CDATA[It seems that I can help some readers with a library of information about GDPR, the new (in May 2018) European Regulation about Privacy and the handling Personal Data on web sites. It may appear as quite complex. So, I collected a list of those articles I found most interesting for a first reading/introduction (aimed at [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>It seems that I can help some readers with a library of information about GDPR, the new (in May 2018) European Regulation about Privacy and the handling Personal Data on web sites. It may appear as quite complex. So, I collected a list of those articles I found most interesting for a first reading/introduction (aimed at WordPress webmasters):</p>
<ul>
<li><a href="https://pagely.com/blog/gdpr-wordpress-2018-resources/">Worried about WordPress and GDPR? Start Here</a></li>
<li><a href="https://www.codeinwp.com/blog/complete-wordpress-gdpr-guide/">GDPR: What Does the New Data Regulation Mean for Your Website, Business and Data?</a></li>
<li><a href="https://www.pinkseo.marketing/how-to-make-a-wordpress-website-compliant-to-gdpr/">How to make a WordPress website compliant to GDPR</a></li>
<li><a href="https://en.support.wordpress.com/automattic-gdpr/">Automattic and the General Data Protection Regulation (GDPR)</a></li>
<li><a href="https://ninjaforms.com/gdpr-compliance-wordpress-forms/">GDPR Compliance and WordPress Forms: Everything You Need to Know</a></li>
</ul>
<p>Have a nice read!</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.roumazeilles.net/news/en/wordpress/2018/04/13/gdpr-some-helpful-documentation/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>How to comply with GDPR in WordPress</title>
		<link>https://www.roumazeilles.net/news/en/wordpress/2018/04/08/how-to-comply-with-gdpr-in-wordpress/</link>
					<comments>https://www.roumazeilles.net/news/en/wordpress/2018/04/08/how-to-comply-with-gdpr-in-wordpress/#respond</comments>
		
		<dc:creator><![CDATA[Yves Roumazeilles]]></dc:creator>
		<pubDate>Sun, 08 Apr 2018 14:43:41 +0000</pubDate>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Create a web site]]></category>
		<category><![CDATA[HTML and CSS]]></category>
		<category><![CDATA[Liberties]]></category>
		<category><![CDATA[New web site]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[GDPR]]></category>
		<guid isPermaLink="false">https://www.roumazeilles.net/news/en/wordpress/?p=14483</guid>

					<description><![CDATA[I have several web sites wirtten with WordPress  and I needed to comply with the new GDPR European regulation (new in May 2018). After a few hours of work to find how to do this right&#8230; I decided to share my experience and show the steps I went through; not very difficult, but rather lenghty, [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>I have several web sites wirtten with WordPress  and I needed to comply with the <a href="https://en.wikipedia.org/wiki/General_Data_Protection_Regulation">new GDPR European regulation</a> (new in May 2018). After a few hours of work to find how to do this right&#8230; I decided to share my experience and show the steps I went through; not very difficult, but rather lenghty, I&#8217;d say.</p>
<p>Please, note: I am not a lawyer or your Legal Department, it all merely comes from my reading and my understanding.</p>
<p><span id="more-14483"></span></p>
<h1>Deployment</h1>
<h2>Cookies</h2>
<p>First step (normally, this should be in place for quite some time already, since this started a long time ago): Add an informative message to inform visitors that you are collecting cookies.</p>
<p>I simply used a small plug-in (you can find others too) : <a href="https://fr.wordpress.org/plugins/cookie-notice/">Cookie Notice</a> from <a href="http://www.dfactory.eu/">dFactory</a>.</p>
<p>Pros: It is working in various languges (and in English), it has been tested on more than 500,000 sites before mine, it starts in less than a minute.</p>
<h2>Contact form</h2>
<p>For many reasons, you will need to have a decent contact form (including to be able to answer GDPR-related requests). I recommend a simple and small (and free) forms editor like <a href="https://wordpress.org/plugins/ninja-forms/">Ninja Forms</a>.</p>
<p>In two minutes, you will have a working contact form. Don&#8217;t forget to add the checkbox with &#8220;<em>By using this form you agree with the storage and handling of your data by this website</em>&#8221; (This should be present on all your forms).</p>
<p>Then, you need to create a &#8220;Contact&#8221; page in WordPress. You will include the specific code to include the form you just created with the following shortcode:</p>
<p><code> <noscript class="ninja-forms-noscript-message">
	Notice: JavaScript is required for this content.</noscript>
<div id="nf-form-1-cont" class="nf-form-cont" aria-live="polite" aria-labelledby="nf-form-title-1" aria-describedby="nf-form-errors-1" role="form">

    <div class="nf-loading-spinner"></div>

</div>
        <!-- That data is being printed as a workaround to page builders reordering the order of the scripts loaded-->
        <script>var formDisplay=1;var nfForms=nfForms||[];var form=[];form.id='1';form.settings={"objectType":"Form Setting","editActive":true,"title":"Contact","key":"","created_at":"2018-04-03 18:30:52","default_label_pos":"above","conditions":[],"show_title":0,"clear_complete":"1","hide_complete":"1","wrapper_class":"","element_class":"","add_submit":"1","logged_in":"","not_logged_in_msg":"","sub_limit_number":"5","sub_limit_msg":"<p>Too many messages sent in too short a time. Please, come back later (tomorrow?)<br><\/p>","calculations":[],"formContentData":["name","email","message","by_using_this_form_you_agree_with_the_storage_and_handling_of_your_data_by_this_website_1522786690421","recaptcha_1600364472154","submit"],"container_styles_background-color":"","container_styles_border":"","container_styles_border-style":"","container_styles_border-color":"","container_styles_color":"","container_styles_height":"","container_styles_width":"","container_styles_font-size":"","container_styles_margin":"","container_styles_padding":"","container_styles_display":"","container_styles_float":"","container_styles_show_advanced_css":"0","container_styles_advanced":"","title_styles_background-color":"","title_styles_border":"","title_styles_border-style":"","title_styles_border-color":"","title_styles_color":"","title_styles_height":"","title_styles_width":"","title_styles_font-size":"","title_styles_margin":"","title_styles_padding":"","title_styles_display":"","title_styles_float":"","title_styles_show_advanced_css":"0","title_styles_advanced":"","row_styles_background-color":"","row_styles_border":"","row_styles_border-style":"","row_styles_border-color":"","row_styles_color":"","row_styles_height":"","row_styles_width":"","row_styles_font-size":"","row_styles_margin":"","row_styles_padding":"","row_styles_display":"","row_styles_show_advanced_css":"0","row_styles_advanced":"","row-odd_styles_background-color":"","row-odd_styles_border":"","row-odd_styles_border-style":"","row-odd_styles_border-color":"","row-odd_styles_color":"","row-odd_styles_height":"","row-odd_styles_width":"","row-odd_styles_font-size":"","row-odd_styles_margin":"","row-odd_styles_padding":"","row-odd_styles_display":"","row-odd_styles_show_advanced_css":"0","row-odd_styles_advanced":"","success-msg_styles_background-color":"","success-msg_styles_border":"","success-msg_styles_border-style":"","success-msg_styles_border-color":"","success-msg_styles_color":"","success-msg_styles_height":"","success-msg_styles_width":"","success-msg_styles_font-size":"","success-msg_styles_margin":"","success-msg_styles_padding":"","success-msg_styles_display":"","success-msg_styles_show_advanced_css":"0","success-msg_styles_advanced":"","error_msg_styles_background-color":"","error_msg_styles_border":"","error_msg_styles_border-style":"","error_msg_styles_border-color":"","error_msg_styles_color":"","error_msg_styles_height":"","error_msg_styles_width":"","error_msg_styles_font-size":"","error_msg_styles_margin":"","error_msg_styles_padding":"","error_msg_styles_display":"","error_msg_styles_show_advanced_css":"0","error_msg_styles_advanced":"","currency":"","unique_field_error":"A form with this value has already been submitted.","drawerDisabled":false,"allow_public_link":0,"embed_form":"","ninjaForms":"Ninja Forms","changeEmailErrorMsg":"Please enter a valid email address!","changeDateErrorMsg":"Please enter a valid date!","confirmFieldErrorMsg":"These fields must match!","fieldNumberNumMinError":"Number Min Error","fieldNumberNumMaxError":"Number Max Error","fieldNumberIncrementBy":"Please increment by ","fieldTextareaRTEInsertLink":"Insert Link","fieldTextareaRTEInsertMedia":"Insert Media","fieldTextareaRTESelectAFile":"Select a file","formErrorsCorrectErrors":"Please correct errors before submitting this form.","formHoneypot":"If you are a human seeing this field, please leave it empty.","validateRequiredField":"This is a required field.","honeypotHoneypotError":"Honeypot Error","fileUploadOldCodeFileUploadInProgress":"File Upload in Progress.","fileUploadOldCodeFileUpload":"FILE UPLOAD","currencySymbol":"&euro;","fieldsMarkedRequired":"Fields marked with an <span class=\"ninja-forms-req-symbol\">*<\/span> are required","thousands_sep":",","decimal_point":".","siteLocale":"en_US","dateFormat":"Y\/m\/d","startOfWeek":"1","of":"of","previousMonth":"Previous Month","nextMonth":"Next Month","months":["January","February","March","April","May","June","July","August","September","October","November","December"],"monthsShort":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"weekdays":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"weekdaysShort":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"weekdaysMin":["Su","Mo","Tu","We","Th","Fr","Sa"],"recaptchaConsentMissing":"reCaptcha validation couldn&#039;t load.","recaptchaMissingCookie":"reCaptcha v3 validation couldn&#039;t load the cookie needed to submit the form.","recaptchaConsentEvent":"Accept reCaptcha cookies before sending the form.","currency_symbol":"","beforeForm":"","beforeFields":"","afterFields":"","afterForm":""};form.fields=[{"objectType":"Field","objectDomain":"fields","editActive":false,"order":1,"label":"Name","key":"name","type":"textbox","created_at":"2018-04-03 18:30:52","label_pos":"above","required":1,"placeholder":"","default":"","wrapper_class":"","element_class":"","container_class":"","input_limit":"","input_limit_type":"characters","input_limit_msg":"Character(s) left","manual_key":"","disable_input":"","admin_label":"","help_text":"","desc_text":"","disable_browser_autocomplete":"","mask":"","custom_mask":"","wrap_styles_background-color":"","wrap_styles_border":"","wrap_styles_border-style":"","wrap_styles_border-color":"","wrap_styles_color":"","wrap_styles_height":"","wrap_styles_width":"","wrap_styles_font-size":"","wrap_styles_margin":"","wrap_styles_padding":"","wrap_styles_display":"","wrap_styles_float":"","wrap_styles_show_advanced_css":0,"wrap_styles_advanced":"","label_styles_background-color":"","label_styles_border":"","label_styles_border-style":"","label_styles_border-color":"","label_styles_color":"","label_styles_height":"","label_styles_width":"","label_styles_font-size":"","label_styles_margin":"","label_styles_padding":"","label_styles_display":"","label_styles_float":"","label_styles_show_advanced_css":0,"label_styles_advanced":"","element_styles_background-color":"","element_styles_border":"","element_styles_border-style":"","element_styles_border-color":"","element_styles_color":"","element_styles_height":"","element_styles_width":"","element_styles_font-size":"","element_styles_margin":"","element_styles_padding":"","element_styles_display":"","element_styles_float":"","element_styles_show_advanced_css":0,"element_styles_advanced":"","cellcid":"c3277","custom_name_attribute":"","personally_identifiable":"","value":"","id":1,"beforeField":"","afterField":"","parentType":"textbox","element_templates":["textbox","input"],"old_classname":"","wrap_template":"wrap"},{"objectType":"Field","objectDomain":"fields","editActive":false,"order":2,"label":"Email","key":"email","type":"email","created_at":"2018-04-03 18:30:52","label_pos":"above","required":1,"placeholder":"","default":"","wrapper_class":"","element_class":"","container_class":"","admin_label":"","help_text":"","desc_text":"","wrap_styles_background-color":"","wrap_styles_border":"","wrap_styles_border-style":"","wrap_styles_border-color":"","wrap_styles_color":"","wrap_styles_height":"","wrap_styles_width":"","wrap_styles_font-size":"","wrap_styles_margin":"","wrap_styles_padding":"","wrap_styles_display":"","wrap_styles_float":"","wrap_styles_show_advanced_css":0,"wrap_styles_advanced":"","label_styles_background-color":"","label_styles_border":"","label_styles_border-style":"","label_styles_border-color":"","label_styles_color":"","label_styles_height":"","label_styles_width":"","label_styles_font-size":"","label_styles_margin":"","label_styles_padding":"","label_styles_display":"","label_styles_float":"","label_styles_show_advanced_css":0,"label_styles_advanced":"","element_styles_background-color":"","element_styles_border":"","element_styles_border-style":"","element_styles_border-color":"","element_styles_color":"","element_styles_height":"","element_styles_width":"","element_styles_font-size":"","element_styles_margin":"","element_styles_padding":"","element_styles_display":"","element_styles_float":"","element_styles_show_advanced_css":0,"element_styles_advanced":"","cellcid":"c3281","custom_name_attribute":"email","personally_identifiable":1,"value":"","id":2,"beforeField":"","afterField":"","parentType":"email","element_templates":["email","input"],"old_classname":"","wrap_template":"wrap"},{"objectType":"Field","objectDomain":"fields","editActive":false,"order":3,"label":"Message","key":"message","type":"textarea","created_at":"2018-04-03 18:30:52","label_pos":"above","required":1,"placeholder":"","default":"","wrapper_class":"","element_class":"","container_class":"","input_limit":"","input_limit_type":"characters","input_limit_msg":"Character(s) left","manual_key":"","disable_input":"","admin_label":"","help_text":"","desc_text":"","disable_browser_autocomplete":"","textarea_rte":"","disable_rte_mobile":"","textarea_media":"","wrap_styles_background-color":"","wrap_styles_border":"","wrap_styles_border-style":"","wrap_styles_border-color":"","wrap_styles_color":"","wrap_styles_height":"","wrap_styles_width":"","wrap_styles_font-size":"","wrap_styles_margin":"","wrap_styles_padding":"","wrap_styles_display":"","wrap_styles_float":"","wrap_styles_show_advanced_css":0,"wrap_styles_advanced":"","label_styles_background-color":"","label_styles_border":"","label_styles_border-style":"","label_styles_border-color":"","label_styles_color":"","label_styles_height":"","label_styles_width":"","label_styles_font-size":"","label_styles_margin":"","label_styles_padding":"","label_styles_display":"","label_styles_float":"","label_styles_show_advanced_css":0,"label_styles_advanced":"","element_styles_background-color":"","element_styles_border":"","element_styles_border-style":"","element_styles_border-color":"","element_styles_color":"","element_styles_height":"","element_styles_width":"","element_styles_font-size":"","element_styles_margin":"","element_styles_padding":"","element_styles_display":"","element_styles_float":"","element_styles_show_advanced_css":0,"element_styles_advanced":"","cellcid":"c3284","value":"","id":3,"beforeField":"","afterField":"","parentType":"textarea","element_templates":["textarea","input"],"old_classname":"","wrap_template":"wrap"},{"objectType":"Field","objectDomain":"fields","editActive":false,"order":4,"label":"By using this form you agree with the storage and handling of your data by this website","type":"checkbox","key":"by_using_this_form_you_agree_with_the_storage_and_handling_of_your_data_by_this_website_1522786690421","label_pos":"right","required":1,"container_class":"","element_class":"","manual_key":false,"admin_label":"","help_text":"","default_value":"unchecked","checked_value":"Checked","unchecked_value":"Unchecked","drawerDisabled":false,"id":5,"beforeField":"","afterField":"","value":"","parentType":"checkbox","element_templates":["checkbox","input"],"old_classname":"","wrap_template":"wrap"},{"objectType":"Field","objectDomain":"fields","editActive":false,"order":5,"label":"Recaptcha","type":"recaptcha","container_class":"","element_class":"","size":"visible","key":"recaptcha_1600364472154","id":6,"beforeField":"","afterField":"","value":"","label_pos":"above","parentType":"textbox","element_templates":["recaptcha","input"],"old_classname":"","wrap_template":"wrap","site_key":"6Lcsg80ZAAAAAHIPQxO3dCwn1i2X8tGubXe6TfjZ","theme":"light","lang":"en"},{"objectType":"Field","objectDomain":"fields","editActive":false,"order":6,"label":"Submit","key":"submit","type":"submit","created_at":"2018-04-03 18:30:52","processing_label":"Processing","container_class":"","element_class":"","wrap_styles_background-color":"","wrap_styles_border":"","wrap_styles_border-style":"","wrap_styles_border-color":"","wrap_styles_color":"","wrap_styles_height":"","wrap_styles_width":"","wrap_styles_font-size":"","wrap_styles_margin":"","wrap_styles_padding":"","wrap_styles_display":"","wrap_styles_float":"","wrap_styles_show_advanced_css":0,"wrap_styles_advanced":"","label_styles_background-color":"","label_styles_border":"","label_styles_border-style":"","label_styles_border-color":"","label_styles_color":"","label_styles_height":"","label_styles_width":"","label_styles_font-size":"","label_styles_margin":"","label_styles_padding":"","label_styles_display":"","label_styles_float":"","label_styles_show_advanced_css":0,"label_styles_advanced":"","element_styles_background-color":"","element_styles_border":"","element_styles_border-style":"","element_styles_border-color":"","element_styles_color":"","element_styles_height":"","element_styles_width":"","element_styles_font-size":"","element_styles_margin":"","element_styles_padding":"","element_styles_display":"","element_styles_float":"","element_styles_show_advanced_css":0,"element_styles_advanced":"","submit_element_hover_styles_background-color":"","submit_element_hover_styles_border":"","submit_element_hover_styles_border-style":"","submit_element_hover_styles_border-color":"","submit_element_hover_styles_color":"","submit_element_hover_styles_height":"","submit_element_hover_styles_width":"","submit_element_hover_styles_font-size":"","submit_element_hover_styles_margin":"","submit_element_hover_styles_padding":"","submit_element_hover_styles_display":"","submit_element_hover_styles_float":"","submit_element_hover_styles_show_advanced_css":0,"submit_element_hover_styles_advanced":"","cellcid":"c3287","id":4,"beforeField":"","afterField":"","value":"","label_pos":"above","parentType":"textbox","element_templates":["submit","button","input"],"old_classname":"","wrap_template":"wrap-no-label"}];nfForms.push(form);</script>
        </code></p>
<p>Small GDPR support: Ninja forms allow you to setup forms without storing any data on the web site, reducing the load to comply with GDPR in simpler forms.</p>
<p>But, don&#8217;t forget to enable the sending of the confirmation message to the comment author (all the more because the post-form message includes mention of this confirmation &#8211; be consistent).</p>
<p>On top of this, if your web site includes a comment system (quite common fact), I recommend using a plugin to include the standard reminder checkbox: <a href="https://wordpress.org/plugins/wp-gdpr-compliance/">WP GDPR Compliance</a> from <a href="https://www.van-ons.nl/">Van Ons</a>. Bonus: It makes some recommendations on various GDPR-related cases.</p>
<h2>Data Protection Officer</h2>
<p>Name somebody (with an email address) as the internal interface for all private data issues. It is not compulsory (for smaller teams) but it is so much clearer (and recommended) that somebody feels i charge of this (even the CEO). This person will be contacted bu visitors willing to know what data you collect and how to remove all their personal data from the web site (these are legal requirements).</p>
<p>Make sure that this person is reachable through a very easy interface (including the contact form or some other form).</p>
<h2>Privacy policy</h2>
<p>Above all, you must make sure that you can explain simply what are your intentions about private data you will collect (private data include email, name, IP address, etc.) and how you intend to comply with your legal obligations. This page must tell it all simply.</p>
<p>Try and write it right on the first attempt. You are legally bound to inform all your users any time you make a change (even simple ones)&#8230;</p>
<p>This is a WordPress page, rather than a poost (it must stay readily available and easily reachable by all even in the future).</p>
<p>I recommend to -more or less- follow the GDPR themes (it&#8217;s easier):</p>
<ul>
<li>Existence (or not) of a Data Protection Officer, in charge of the whole process of personal data handling</li>
<li>Definition of data collection, handling, storing, transfer and removal processes</li>
<li>Creation of a process to notify any data breach</li>
<li>Explicit consent to data collection</li>
<li>Right to access (and removal) of personal data</li>
</ul>
<h2>Access to personal data</h2>
<p>You must give full access to any user&#8217;s personal data stored on the web site. This is realtively easy using a plugin (<a href="https://fr.wordpress.org/plugins/gdpr-compliance/">GDPR compliance</a> from <a href="https://www.scribit.it/">Scribit</a>) and a specific page where you will only write the shortcode:</p>
<p><code> [gdpruserdata]</code></p>
<p>Of course, you can add some more details (refer to the plugin help information for more options).</p>
<p>Then, you can direct the requests to this page which will display the full breadth of personal data. As this is not a very nice page (rather dry reading), I recommend to keep it masked (I don&#8217;t feel it is necessary to show it permanently to all &#8211; answering requests should be enough).</p>
<h2>Annoncement</h2>
<p>Maybe not the worst or the most complicated, but I finally added a small message on the web site to announce the deployment of this whole process. Explaining is better than waiting for people to ask. And the message is positive: You care about your users and visitors.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.roumazeilles.net/news/en/wordpress/2018/04/08/how-to-comply-with-gdpr-in-wordpress/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Easily identify your USB sticks</title>
		<link>https://www.roumazeilles.net/news/en/wordpress/2018/01/05/easily-identify-your-usb-sticks/</link>
					<comments>https://www.roumazeilles.net/news/en/wordpress/2018/01/05/easily-identify-your-usb-sticks/#respond</comments>
		
		<dc:creator><![CDATA[Yves Roumazeilles]]></dc:creator>
		<pubDate>Fri, 05 Jan 2018 17:46:47 +0000</pubDate>
				<category><![CDATA[Storage]]></category>
		<category><![CDATA[Tech]]></category>
		<category><![CDATA[Windows 10]]></category>
		<category><![CDATA[Windows 7]]></category>
		<category><![CDATA[Windows 8]]></category>
		<category><![CDATA[Windows Vista]]></category>
		<guid isPermaLink="false">https://www.roumazeilles.net/news/en/wordpress/?p=14443</guid>

					<description><![CDATA[Our computers have more and more USB ports, and we have so many storage drives plugged into them (USB drives, USB thumb drives, memory card readers, etc.) that it is somewhat difficult to recognize them all when they are displayed on the desktop. In the example below, you wonder which one is which among all [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Our computers have more and more USB ports, and we have so many storage drives plugged into them (USB drives, USB thumb drives, memory card readers, etc.) that it is somewhat difficult to recognize them all when they are displayed on the desktop. In the example below, you wonder which one is which among all the &#8220;drives&#8221; available on this computer.</p>
<p><img fetchpriority="high" decoding="async" class="aligncenter size-full wp-image-9440" src="https://www.roumazeilles.net/news/fr/wordpress/wp-content/uploads/2018/01/file_explorer.png" alt="Windows file explorer" width="791" height="482" /></p>
<p>wouldn&#8217;t it be great if we had a simple way to recognize them? Yes, of course. The simpler solution? Put a different name on each drive, but this is very small step. We know that graphical interfaces work better. Why not replace all these ugly grey icons with something ore meaningful (and more pleasant)?<span id="more-14443"></span></p>
<h1>A simple process</h1>
<p>The only requirements are:</p>
<ul>
<li>Access to Google image search (but you can use another one, of course)</li>
<li>Use of a simple image editor able to save to &#8220;Windows .ICO&#8221; file format &#8211; I use <a href="http://www.irfanview.com/">IrfanView</a> which is very feature-rich, but simple to use and perfectly free (as in free beer).</li>
</ul>
<p>Step-by-step:</p>
<ol>
<li>Define an image which is representing the drive well,</li>
<li>Collect this picture,</li>
<li>Set it to the right format,</li>
<li>Set it up on the USB drive.</li>
</ol>
<h1>Step by step</h1>
<h2>Define the image for your icon</h2>
<p>I recommend several possible and complementary approaches. Keep in mind that the objective is to easily recognize the USB thumb drives or the disk drives connected to the computer USB port(s). Nota bene: This works with internal hard drives too.</p>
<p>Solution #1: If the USB thumb drive is very recognizable, you can find on the web some good photo representing it nice and well. You can even collect a press release photo form the manufacturer if you have the manufacturer name and the product model. For example, I can look for photos of external hard drives from Western Digital, MyPassport model, red color. Google result is offering a wide choice of good pictures:</p>
<p><img decoding="async" class="aligncenter size-large wp-image-9441" src="https://www.roumazeilles.net/news/fr/wordpress/wp-content/uploads/2018/01/WD-MyPassport-red-600x311.png" alt="Google: WD MyPassport red" width="600" height="311" /></p>
<p>AEven if you don&#8217;t have the exact name of the thumb drive (not all of Chinese-sourced drives are named properly), it is quite easy to look for a good description like &#8220;orange USB drive&#8221;. Less precise, somewhat more error-prone, but it works astonishingly well.</p>
<p>Solution #2: With the same Google Image Search, look for a nice photo that would represent the disk contents (or its name). Try looking for &#8220;cinema&#8221; or &#8220;movies&#8221; or &#8220;old movies&#8221; or &#8220;1980 movies&#8221; for a hard drive you expect will hold your movie collection You will be surprised by the available choice.</p>
<h2>Choice reduction</h2>
<p>Faced with so many options, I recommend limiting yourself with some specific search filters. (on the Google page, press the &#8220;Tools&#8221; button and choose the following filters):</p>
<p><img decoding="async" class="aligncenter size-large wp-image-14444" src="https://www.roumazeilles.net/news/en/wordpress/wp-content/uploads/2018/01/public_domain_images-600x60.png" alt="Google: public_domain_images" width="600" height="60" srcset="https://www.roumazeilles.net/news/en/wordpress/wp-content/uploads/2018/01/public_domain_images-600x60.png 600w, https://www.roumazeilles.net/news/en/wordpress/wp-content/uploads/2018/01/public_domain_images-300x30.png 300w, https://www.roumazeilles.net/news/en/wordpress/wp-content/uploads/2018/01/public_domain_images-150x15.png 150w, https://www.roumazeilles.net/news/en/wordpress/wp-content/uploads/2018/01/public_domain_images-768x77.png 768w, https://www.roumazeilles.net/news/en/wordpress/wp-content/uploads/2018/01/public_domain_images-1536x153.png 1536w, https://www.roumazeilles.net/news/en/wordpress/wp-content/uploads/2018/01/public_domain_images.png 1837w" sizes="(max-width: 600px) 100vw, 600px" /></p>
<ol>
<li>Only take <strong>large size</strong> images (you&#8217;ll see it is important)</li>
<li>Select public domain pictures that you can modify: &#8220;<strong>Labeled for re-use with modification</strong>&#8221; (Why <em>steal</em> a photo when you can use one its author wants to share?).</li>
<li>Most critical: Chose a very simple, pretty but easily recognizable picture (an icon may be very small).</li>
<li>Last recommendation: It is often better to start from an image with a white or very lightly colored background (it &#8220;works&#8221; better in most cases, as you will see).</li>
</ol>
<h2>Collect the picture</h2>
<p>Download the image you found on Google.</p>
<h2>Create the icon</h2>
<p>After all, an icon is merely a square image brought down to a small size and in special ICO format. the walkthrough is rather simple, you&#8217;ll see.</p>
<p>Load the image in IrfanView.</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-large wp-image-9444" src="https://www.roumazeilles.net/news/fr/wordpress/wp-content/uploads/2018/01/IrfanView_1-452x600.png" alt="" width="452" height="600" /></p>
<p>Modify the size of the picture to move to a square ratio (change canvas size). You can do it by either enlarging or reducing the canvas size (choosing the right background color).</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-9445" src="https://www.roumazeilles.net/news/fr/wordpress/wp-content/uploads/2018/01/IrfanView_2.png" alt="" width="466" height="513" /></p>
<p>The result should be a nice square picture but you may feel that it is rather large for an icon.</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-large wp-image-9446" src="https://www.roumazeilles.net/news/fr/wordpress/wp-content/uploads/2018/01/IrfanView_3-536x600.png" alt="" width="536" height="600" /></p>
<p>As a matter of fact, size does not matter much here. The larger, the better to keep the icon looking good when changing display sizes. Now comes the time to make sure that the size is exactly a multiple of 2 (eg. 2048&#215;2048 pixels). It is not useful to go further than 4096&#215;4096 pixels, but do not go below 1024&#215;1024 pixels. IrfanView will do this easily, from <code>Image&gt;Resize/resample...</code> menu.</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-large wp-image-9447" src="https://www.roumazeilles.net/news/fr/wordpress/wp-content/uploads/2018/01/IrfanView_4-600x464.png" alt="" width="600" height="464" /></p>
<p>Then, you need to save the picture as .ICO file (be sure to use &#8220;Save as type&#8221; with the &#8220;ICO &#8211; Windows icon&#8221; option).</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-large wp-image-9448" src="https://www.roumazeilles.net/news/fr/wordpress/wp-content/uploads/2018/01/IrfanView_5-600x493.png" alt="" width="600" height="493" /></p>
<h2>Setup on the USB drive</h2>
<p>This icon (this ICO file) must be saved at the root of the USB thumb drive (in the  <code>D:\</code> directory), preferably under the <code>autorun.ico</code> name (but we can accommodate any other name like <code>Lynx.ico</code>).</p>
<p>Last, copy or create a text file named <code>autorun.inf</code> with the following contents (also in <code>D:\</code> directory), :</p>
<p><code>[autorun]<br />
ICON="autorun.ico"<br />
</code></p>
<p>This small file will allow Windows finding the icon named <code>autorun.ico</code> (or any other name that you previously chose)).</p>
<h1>Result</h1>
<p>Now, your icons will be perfectly distinguishable. Like here with drawings, pictures, photographs, logos, etc.</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-large wp-image-14453" src="https://www.roumazeilles.net/news/en/wordpress/wp-content/uploads/2018/01/desktop_copy-600x375.png" alt="" width="600" height="375" srcset="https://www.roumazeilles.net/news/en/wordpress/wp-content/uploads/2018/01/desktop_copy-600x375.png 600w, https://www.roumazeilles.net/news/en/wordpress/wp-content/uploads/2018/01/desktop_copy-300x188.png 300w, https://www.roumazeilles.net/news/en/wordpress/wp-content/uploads/2018/01/desktop_copy-150x94.png 150w, https://www.roumazeilles.net/news/en/wordpress/wp-content/uploads/2018/01/desktop_copy-768x480.png 768w, https://www.roumazeilles.net/news/en/wordpress/wp-content/uploads/2018/01/desktop_copy-1536x960.png 1536w, https://www.roumazeilles.net/news/en/wordpress/wp-content/uploads/2018/01/desktop_copy.png 1920w" sizes="auto, (max-width: 600px) 100vw, 600px" /></p>
<p>Bonus: this is applicable to your company logo. If you give USB thumb drives away, better than putting any photo, install your company logo for a fully personalized thumb drive!</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.roumazeilles.net/news/en/wordpress/2018/01/05/easily-identify-your-usb-sticks/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Zero digital noise photography</title>
		<link>https://www.roumazeilles.net/news/en/wordpress/2017/12/30/zero-digital-noise-photography/</link>
					<comments>https://www.roumazeilles.net/news/en/wordpress/2017/12/30/zero-digital-noise-photography/#respond</comments>
		
		<dc:creator><![CDATA[Yves Roumazeilles]]></dc:creator>
		<pubDate>Sat, 30 Dec 2017 21:53:12 +0000</pubDate>
				<category><![CDATA[Photo]]></category>
		<category><![CDATA[Sciences]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Tech]]></category>
		<category><![CDATA[Use your D-SLR]]></category>
		<category><![CDATA[digital noise]]></category>
		<guid isPermaLink="false">https://www.roumazeilles.net/news/en/wordpress/?p=14389</guid>

					<description><![CDATA[A few years ago I had written about Guillermo Luijk&#8217;s technique to remove completely noise from digital photos. We know that this is a difficult task, but his solution is relatively simple: Shot the scene in a correct exposure according to our usual workflow; Repeat the shot now reducing shutter speed by 4 f-stops that [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>A few years ago I had written about <a href="http://www.guillermoluijk.com/article/nonoise/index_en.htm">Guillermo Luijk&#8217;s technique to remove completely noise from digital photos</a>. We know that this is a difficult task, but his solution is relatively simple:</p>
<ol>
<li>Shot the scene in a correct exposure according to our usual workflow;</li>
<li>Repeat the shot now reducing shutter speed by 4 f-stops that will be corrected in the RAW development (this grossly over-exposed shot will keep shadow details without digital noise);</li>
<li>Blend in some way both images obtaining a free of noise final image.</li>
</ol>
<p>Guillermo Luijk had published his software application and I did not mention it. So, let me correct this error and give you <a href="http://www.guillermoluijk.com/software/zeronoise/index.htm">Zero Noise</a>.</p>
<p><center><img decoding="async" src="https://www.roumazeilles.net/news/en/wordpress/wp-content/uploads/sillon.jpg" alt="Comparison of noise and noise-reduced digital images" /></center>&nbsp;</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.roumazeilles.net/news/en/wordpress/2017/12/30/zero-digital-noise-photography/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>My own participation to Emacs history</title>
		<link>https://www.roumazeilles.net/news/en/wordpress/2017/12/13/my-own-participation-to-emacs-history/</link>
					<comments>https://www.roumazeilles.net/news/en/wordpress/2017/12/13/my-own-participation-to-emacs-history/#comments</comments>
		
		<dc:creator><![CDATA[Yves Roumazeilles]]></dc:creator>
		<pubDate>Tue, 12 Dec 2017 22:25:49 +0000</pubDate>
				<category><![CDATA[Legal downloads]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Daniel Lawrence]]></category>
		<category><![CDATA[Dave Conroy]]></category>
		<category><![CDATA[download]]></category>
		<category><![CDATA[Ed Davis]]></category>
		<category><![CDATA[Emacs]]></category>
		<category><![CDATA[FAQ]]></category>
		<category><![CDATA[free download]]></category>
		<category><![CDATA[MicroEmacs]]></category>
		<guid isPermaLink="false">https://www.roumazeilles.net/news/en/wordpress/?p=14424</guid>

					<description><![CDATA[A few versions of this text editor (sometimes) loved by many software programmers / Archive of old Emacs versions.]]></description>
										<content:encoded><![CDATA[<p>This was initially published in reaction to discovering that there is a FAQ (maintained by &#8220;Craig A. Finseth&#8221; &lt;fin@finseth.com&gt;) about the various implementations of Emacs. Since I have been collecting (and building) a few ones myself that were not published elsewhere, here they come:</p>
<ul>
<li>A slightly modified <a href="https://www.roumazeilles.net/ZIP/EMAXORIG.ZIP">MicroEmacs</a> (coming from Dave G. Conroy and modified by Christian Jullien in 1987).</li>
<li>I used it as a basis for some time to have my own YR-Emacs (up to <a href="https://www.roumazeilles.net/ZIP/EMAX130A.ZIP">v1.30a</a>).</li>
<li>What appears to be a <a href="https://www.roumazeilles.net/ZIP/UEMACS312a.ZIP">MicroEmacs v3.12a</a> (<a href="https://www.roumazeilles.net/ZIP/Uemacs312.zip">original v3.12</a> from Daniel Lawrence, but slightly modified by me in a pitiful attempt to extend it for my own use).</li>
<li>Ed Davis addition in 2018: <a href="https://www.roumazeilles.net/ZIP/uemacs2.zip">A very old (14 Dec 85) version of MicroEmacs</a>, and a minimally updated version, to get it to compile on Windows 7 and Linux.
<ul>
<li>readme.txt     &#8211; this file.</li>
<li>uemacs.message &#8211; 14 Dec 85 21:31:29 GMT message posted to net.sources, with uemacs v2.0 source.</li>
<li>updated.zip    &#8211; updates of the same, to get it to compile on Windows 7 and Linux.</li>
<li>changes.txt    &#8211; changes from original to whats in updated.zip</li>
</ul>
</li>
</ul>
<p>I am not sure that this is more than history. It looks like nobody would be using these versions today, but I don&#8217;t want to let this go. I am mainly assuming that some source code historian would find this useful in 2050 (if this web site survived until then, and the word Emacs still has a meaning).</p>


<p><span style="text-decoration: underline;">2020-02-13 UPDATE:</span> modified all inks to make sure that they are HTTP<strong>S</strong>, in order to avoid compatibility issues with modern web browsers.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.roumazeilles.net/news/en/wordpress/2017/12/13/my-own-participation-to-emacs-history/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>Authy, solution to 2FA pains</title>
		<link>https://www.roumazeilles.net/news/en/wordpress/2017/11/15/authy-solution-to-2fa-pains/</link>
					<comments>https://www.roumazeilles.net/news/en/wordpress/2017/11/15/authy-solution-to-2fa-pains/#respond</comments>
		
		<dc:creator><![CDATA[Yves Roumazeilles]]></dc:creator>
		<pubDate>Wed, 15 Nov 2017 12:55:37 +0000</pubDate>
				<category><![CDATA[Google]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Windows 10]]></category>
		<category><![CDATA[2FA]]></category>
		<guid isPermaLink="false">https://www.roumazeilles.net/news/en/wordpress/?p=14343</guid>

					<description><![CDATA[In the past, I have been known to push for the use of two-factor authentication for as many web sites as possible. Through the use of an app running on my smartphone, I can provide a code that is much safer than the SMS text message sent by some web sites and that can be [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>In the past, I have been known to push for the use of two-factor authentication for as many web sites as possible. Through the use of an app running on my smartphone, I can provide a code that is much safer than the SMS text message sent by some web sites and that can be used anywhere (even when there is no GSM network).</p>
<p>For years, I used Google authenticator applet on iOS. I knew that it would be a pain if my phone stopped working (or if I replaced it). The only reason I was OK with this, was that I had setup Google authenticator on two phones (I happen to have one for business and one for personal use &#8211; don&#8217;t ask why&#8230;)</p>
<p><span id="more-14343"></span>Actually, replacing one of these smartphones pushed me into testing <a href="https://authy.com/blog/authy-vs-google-authenticator/">Authy</a> as a replacement for Google. And I should have done this earlier. There is no way I will switch back to Google after this.</p>
<p><a href="https://www.roumazeilles.net/news/en/wordpress/wp-content/uploads/2017/11/authy_logo.jpg"><img loading="lazy" decoding="async" class="alignright size-medium wp-image-14348" src="https://www.roumazeilles.net/news/en/wordpress/wp-content/uploads/2017/11/authy_logo-300x85.jpg" alt="Authy logo" width="300" height="85" srcset="https://www.roumazeilles.net/news/en/wordpress/wp-content/uploads/2017/11/authy_logo-300x85.jpg 300w, https://www.roumazeilles.net/news/en/wordpress/wp-content/uploads/2017/11/authy_logo-600x170.jpg 600w, https://www.roumazeilles.net/news/en/wordpress/wp-content/uploads/2017/11/authy_logo-150x43.jpg 150w, https://www.roumazeilles.net/news/en/wordpress/wp-content/uploads/2017/11/authy_logo-768x218.jpg 768w, https://www.roumazeilles.net/news/en/wordpress/wp-content/uploads/2017/11/authy_logo.jpg 874w" sizes="auto, (max-width: 300px) 100vw, 300px" /></a>Authy provides:</p>
<ul>
<li>A cute user interface</li>
<li>Shared accounts between several phones (and a fast way to switch from one old phone to a new one)</li>
<li>All the needed 2FA bells and whistles (compatible with the TOTP standard)</li>
</ul>
<p>In thirty/forty minutes, I recreated all the factors for my accounts (e.g. Google, Outlook, Evernote, Dropbox, or even Ubisoft). And this was needed because I could not transfer this <em>knowledge</em> from the old phone to the new (even though I had both phone working in front of me). But in three/four minutes I could extend it to my other phone. So, any time I need to replace a phone, I can extend/transfer in a matter of minutes, independently of the number of web sites are included in Authy.</p>
<p>I feel much safer. What would have been happening if I had lost/broken my phone with the codes from Google Authenticator? (graceful degradation, no risk of losing access to many web sites at a time in case of a single failure).</p>
<p>I feel much more positive about extending my use of 2FA/two-factor-authentication to  much more web sites because of the added ease of use (longer-term commitment).</p>
<p>Furthermore, <a href="https://authy.com/download/">Authy is available for several Operating Systems</a>:</p>
<ul>
<li>iOS</li>
<li>Android</li>
<li>Windows</li>
<li>Google Chrome</li>
</ul>
<p>Go and install it!</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.roumazeilles.net/news/en/wordpress/2017/11/15/authy-solution-to-2fa-pains/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Synology-based synchronization solution</title>
		<link>https://www.roumazeilles.net/news/en/wordpress/2017/08/27/synology-based-synchronization-solution/</link>
					<comments>https://www.roumazeilles.net/news/en/wordpress/2017/08/27/synology-based-synchronization-solution/#comments</comments>
		
		<dc:creator><![CDATA[Yves Roumazeilles]]></dc:creator>
		<pubDate>Sun, 27 Aug 2017 15:34:05 +0000</pubDate>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Routers & networks]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Storage]]></category>
		<category><![CDATA[Amazon Cloud Drive]]></category>
		<category><![CDATA[Google Drive]]></category>
		<category><![CDATA[Hitachi]]></category>
		<category><![CDATA[hubiC]]></category>
		<category><![CDATA[NAS]]></category>
		<category><![CDATA[RAID]]></category>
		<category><![CDATA[Synology]]></category>
		<category><![CDATA[Western Digital]]></category>
		<guid isPermaLink="false">https://www.roumazeilles.net/news/en/wordpress/?p=14295</guid>

					<description><![CDATA[When CrashPlan announced the end of its unlimited backup service, I had to actively seek a new solution asking myself the question of how to provide two services I was previously (more or less) getting from this provider: Backups Synchronization between several machines (several PC and several iPhone) CrashPlan easily provided the backup feature despite [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>When CrashPlan announced the end of its unlimited backup service, I had to actively seek a new solution asking myself the question of how to provide two services I was previously (more or less) getting from this provider:</p>
<ol>
<li>Backups</li>
<li>Synchronization between several machines (several PC and several iPhone)</li>
</ol>
<p>CrashPlan easily provided the backup feature despite a high volume of photo files (more than 2 TB as of today), but was relatively poor interms of synchronization. So, it was time to spend some energy defining the whole need/specification and finding a true solution.</p>
<h4>Specification</h4>
<p>For backup, my requirements have long been defined:</p>
<ol>
<li>At least three backup copies</li>
<li>At least two different technologies (e.g; not to rely only on optical drives or hard drives)</li>
<li>At least one off-site location (to be protected against theft, fire hazards, etc., think off-site, or cloud, or external/bank safe box)</li>
</ol>
<p>For synchronization, previous use of DropBox and Evernote (on small volumes) allowed me to confirm the precise needs I had:</p>
<ol>
<li>Real-time sharing of some critical files with daily updates (as for Evernote note files, or the database for my password management application, etc.)</li>
<li>Encryption of all comms (I don&#8217;t want to leak my passwords or my bank account data).</li>
</ol>
<h4>Solution</h4>
<p>I was clearly influenced by several factors in my choice, and I will try and make these explicit (your solution may not be strictly identical to mine). So, let&#8217;s start by what I chose to deploy.</p>
<p><span id="more-14295"></span>A smal file server (a Synology DS413j) at my home. It hosts 4 hard drives of 3 TB (initially, four Western Digital RED) in SHR/RAID 5 mode for a total capacity of 6 TB.</p>
<p>The large capacity was defintely dictated by the the need to host a large multimedia server and a large quantity of digital photos (Today, we have altogether much more than 100.000 pictures on this server).</p>
<p>The choice of RAID 5 was a very early one because of its optimum balance between overall dedundancy (you can loose one hard drive with no data loss) and cost (you loose less data to redundancy than in other two-disk RAID configurations). The Synology SHR technology is even better because is allows disks with different capacities (the two smaller ones define the maximum capacity. So, you&#8217;d better have one 500 GB with three 4 TB bigger ones; It would be a waste) and it accepts (like all RAIDs) to replace one failed drive with a new one (during the rebuilding of RAID/SHR, you have no more data protection but this is temporairy &#8211; and you can keep working in paralle).</p>
<p>Going to Synology was even more justified by a single important item rarely listed in RAID sevrer comparisons: The software offering is specially attractive at Synology. DSM (Synology OS) hosts  &#8220;packages&#8221; for many applications. The complements I installed (see below) are provided as ready-to-use instalations and can be easy to install even if you have minimal understanding of the inner workings of a server.</p>
<p>So, I was able to deploy a two-stage solution:</p>
<ol>
<li>PC-to-Synology synchronization (three PC via Cloud Station Server)</li>
<li>Synology-to-Amazon synchronization (Amazon Cloud Drive through Cloud Sync)</li>
</ol>
<p><strong>Cloud Station Server</strong> and <strong>Cloud Sync</strong> are two applications from Synology which are installed in about 5-6 minutes (including download time) from the  &#8220;Packages Center&#8221; of Synology DSM.</p>
<p><figure id="attachment_9248" aria-describedby="caption-attachment-9248" style="width: 600px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-large wp-image-9248" src="https://www.roumazeilles.net/news/fr/wordpress/wp-content/uploads/2017/08/Synology-cloud-600x408.jpg" alt="Synology cloud applications" width="600" height="408" /><figcaption id="caption-attachment-9248" class="wp-caption-text">Synology cloud applications</figcaption></figure></p>
<p>If we start looking at the synchronization between PC (or iPhone) and Synology, merely opening the <strong>Cloud Station Server</strong> in the list below (in the management interface of my Synology DS413j DSM) leads us directly to a menu allowing to download the Windows application (or iPhone app) to install before starting synchronizations between PC and Synology cloud server.</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-large wp-image-9253" src="https://www.roumazeilles.net/news/fr/wordpress/wp-content/uploads/2017/08/Synology-cloud-apps-600x438.jpg" alt="Applications cloud pour Synology" width="600" height="438" /></p>
<p>A few clicks and it&#8217;s done. Nothing could be simpler. a few minutes and synchronization is starting. It runs in background (it does not hinder normal PC activity) and you will only notice the new change to the file icons showing that it is already synched ot the cloud (see examples below) or that it is still waiting for synchronization (blue tag).</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-large wp-image-9252" src="https://www.roumazeilles.net/news/fr/wordpress/wp-content/uploads/2017/08/trail-du-fournel-600x257.jpg" alt="Images synchronisées sur Synology Cloud Server" width="600" height="257" /></p>
<p>At this point, PC are synchronized, via the Synology server. You can consider that this is a backup since I chose to keep all most recent 32 versions of each file modifications and to not let Synology wipe deleted files (they are stored in the server dust-bin). So, this is a Time Machine feature on top of a backup.</p>
<p>Important notice: The synchronisation between PC and Synology cloud server is very fast and does not eat up resource even on a small/old PC (contrary to some backup programs I would not dare name, like Cobian Backup). this is re-assuring: The end-users can forget about the backup running in the background, stopping if the PC goes to sleep and starting again when it wakes up. This whole process has nearly no impact on the PC behaviour.</p>
<p>Similarly, the iPhone and iPad can use synchronization (of some files, I don&#8217;t want them overwhelmed) when on the move.</p>
<p>&nbsp;</p>
<p>The second feature replicates these data to another location (here, I chose to synchronize with Amazon Cloud Drive aka ACD because its cost is only 70€/an which appears very reasonable and can be reduced if you have Amazon Prime and a lot of photos). I understood that transfer speed would be limited by my RAID server (the DS413j is quite old and has a very cheap ARM CPU, but it defintely did not break the bank) rather than my bandwidth (I have optical fiber broadban) or by Amazon (all users observe that Amazon is going fast).</p>
<p>Synology Cloud Sync provides this in a matter of a few clicks. Just provide your Amazon login and password. Synology will do it all for you. Synchronization will start in a minute at most (I tried it with Google Drive too. this is as simple and as fast &#8211; bandwidth is quite high, which is a good thing; I thought about trying c <a href="https://hubic.com/fr/">hubic</a> from OVH, but <a href="https://www.geekzone.fr/2016/09/02/hubic-le-cloud-a-fuir/">Internet comments</a> and face-to-face talks with past users seem to point to a product without the needed performance and reliability you want here).</p>
<h4>Observations</h4>
<p>A few remarks I may have to add after some real-life use:</p>
<ul>
<li>The DS413j has a very small CPU from ARM. the CPU workload stays very high (~100%) during all the synchronization phase.</li>
<li>The first synchronization is lenghty (several days or several weeks depending on the data volume). I recommend to build the data set progressively (not to bunch all your data on the first day).</li>
<li>Next synchros will generally be much faster (nearly instantaneous).</li>
<li>Recently modified files tend to be synchronized first.</li>
<li>I used Cloud Sync to link my server to Amazon, but there is also a solution to synchronize from Synology to Synology: <em>Cloud Station Share Sync</em>. I did not try it but it could be worht exploring if you already have to geographical locations (A second home? A company with two offices?) and two Synology servers. It seems to be as simple as synchronizing with Amazon Cloud Drive.</li>
</ul>
<p><figure style="width: 1019px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-large" src="https://nasinfo.net/wp-content/uploads/ds-cloud.png" alt="Cloud Station ShareSync" width="1019" height="428" /><figcaption class="wp-caption-text">Cloud Station ShareSync</figcaption></figure></p>
<ul>
<li>In order to elevate the RAID server reliability, you&#8217;d better choose hard drives designed for 24/7 use. I would point to Western Digital RED (specailly designed for RAID servers) or Hitachi UltraStar (24/7 version of the DeskStar drives). Also, if you can avoid having all 4 or 5 identical drives, it will reduce the risk of seeing them all failing nearly simultaneously. See BackBlaze statistics on hard drives reliability.</li>
<li>You may ask where are my &#8220;three backup copies&#8221;. I actually have the following:
<ul>
<li>The original files on a master PC</li>
<li>A manually-copied copy on a separate hard drive (at least one, sometimes two or three of them on spare drives)</li>
<li>A synchronzied copy on the Synology server</li>
<li>A synchronized copy on Amazon Cloud Drive</li>
</ul>
</li>
<li>While the Synology DS413j is no longer listed, you can stil purchase the DS416j ou DS418j.</li>
<li>On the Synology NAS server, I ensured that the synchronized directory is not visible to Windows: A ransomware can&#8217;t see it, it would have to hack through the Synology software. this is protecting me against those ransomwares which try to encrypt netork drives too. (Anyway, I can still control my data through the web interface of DSM).</li>
<li>If a ransomware tries to encrpyt my files (they may then be synchronized in encrypted form), I made sure that versioning is enabled on Synology (This way, I could travel back in time and avoid &#8220;paying the ransom&#8221;).</li>
</ul>
]]></content:encoded>
					
					<wfw:commentRss>https://www.roumazeilles.net/news/en/wordpress/2017/08/27/synology-based-synchronization-solution/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>PHP7 for WordPress</title>
		<link>https://www.roumazeilles.net/news/en/wordpress/2016/05/02/php7-for-wordpress/</link>
					<comments>https://www.roumazeilles.net/news/en/wordpress/2016/05/02/php7-for-wordpress/#respond</comments>
		
		<dc:creator><![CDATA[Yves Roumazeilles]]></dc:creator>
		<pubDate>Mon, 02 May 2016 20:06:57 +0000</pubDate>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[OVH]]></category>
		<guid isPermaLink="false">https://www.roumazeilles.net/news/en/wordpress/?p=13937</guid>

					<description><![CDATA[My hosting company (OVH.com) is very cautious and does not push me into upgrading silently PHP on the servers. But I was still in PHP5 when I noticed that I could go up to PHP7. WordPress informs me that the simple upgrade could improve speed by a ratio of 2x to 3x. So, it was [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>My hosting company (<a href="http://www.OVH.com/">OVH.com</a>) is very cautious and does not push me into upgrading silently PHP on the servers. But I was still in PHP5 when I noticed that I could go up to PHP7.</p>
<p><a href="http://php.net/manual/fr/migration70.php">WordPress informs me</a> that the simple upgrade could improve speed by a ratio of 2x to 3x. So, it was easy to try.</p>
<p>Apart from an old plug-in which appeared unable to tolerate PHP7 (and that I was no longer using), the upgrade went well: I recommend the enormous speed increase for the web sites. This will be positive for my Page Rank in Google, for sure.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.roumazeilles.net/news/en/wordpress/2016/05/02/php7-for-wordpress/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>CrashPlan: Solution to backup crashes</title>
		<link>https://www.roumazeilles.net/news/en/wordpress/2015/03/30/crashplan-solution-to-backup-crashes/</link>
					<comments>https://www.roumazeilles.net/news/en/wordpress/2015/03/30/crashplan-solution-to-backup-crashes/#respond</comments>
		
		<dc:creator><![CDATA[Yves Roumazeilles]]></dc:creator>
		<pubDate>Mon, 30 Mar 2015 21:25:36 +0000</pubDate>
				<category><![CDATA[Security]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Storage]]></category>
		<category><![CDATA[backup]]></category>
		<category><![CDATA[CrashPlan]]></category>
		<guid isPermaLink="false">https://www.roumazeilles.net/news/en/wordpress/?p=13703</guid>

					<description><![CDATA[Finally, it did not take me very long to find a solution to the crashes of my CrashPlan backup solution. And, it was right on the web site of the software editor, where I could find all the directions to follow if CrashPlan crashes unexpectedly. I just doubled the memory size made available to the [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Finally, it did not take me very long to find a solution to the crashes of my CrashPlan backup solution. And, it was right on the web site of the software editor, where I could find all <a href="http://support.code42.com/CrashPlan/Latest/Troubleshooting/CrashPlan_Closes_Unexpectedly" title="CrashPlan explose en vol - que faire ?">the directions to follow if CrashPlan crashes unexpectedly</a>.</p>
<p>I just doubled the memory size made available to the CrashPlan virtual machine, thanks to these indications. The application immediately restarted OK. Instead of exploding after a few seconds, the 7000 file delayed in their backup (thanks to returning from Costa Rica) started to be backed up again by CrashPlan.</p>
<p>Seriously, we would prefer to see Code42 (CrashPlan editor) adding a small code snippet detecting this kind of situation described in the web page and applying by itself the changes without requiring dancing to a tune that is utterly inaudible for most of the users&#8230;</p>
<p>There is still to understand the restoration issues on Marion&#8217;s PC (it&#8217;s much more important to be able to restore than to be able to backup).</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.roumazeilles.net/news/en/wordpress/2015/03/30/crashplan-solution-to-backup-crashes/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
