<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Leonardo C. Guilen</title>
    <description>The latest articles on DEV Community by Leonardo C. Guilen (@lguilen).</description>
    <link>https://dev.to/lguilen</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F776340%2F360db4cc-484a-4c0d-b8bc-98476ec50005.jpeg</url>
      <title>DEV Community: Leonardo C. Guilen</title>
      <link>https://dev.to/lguilen</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/lguilen"/>
    <language>en</language>
    <item>
      <title>Articles Discovery Engine</title>
      <dc:creator>Leonardo C. Guilen</dc:creator>
      <pubDate>Tue, 30 Aug 2022 01:59:19 +0000</pubDate>
      <link>https://dev.to/lguilen/articles-discovery-engine-3p43</link>
      <guid>https://dev.to/lguilen/articles-discovery-engine-3p43</guid>
      <description>&lt;h3&gt;
  
  
  Overview of My Submission
&lt;/h3&gt;

&lt;p&gt;Search engine system for articles using the redis technology stack. A tool that extracts articles and streams this information to the redis cluster, where processing is done with Redis Gears to add the data as JSON documents in RedisJson and indexes it to enable search with RediSearch.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkwxcfv2ucvikj8qhi4by.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkwxcfv2ucvikj8qhi4by.png" alt="Architecture Image" width="800" height="552"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This Project is using the RedisStack features &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Storing Data in database with the help of JSONModels ✅&lt;/li&gt;
&lt;li&gt;Ads and Recommendation Engines are using features like Querying and indexing ✅&lt;/li&gt;
&lt;li&gt;Data Processing with Gears function ✅&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Submission Category:
&lt;/h3&gt;

&lt;p&gt;Wacky Wildcards&lt;/p&gt;

&lt;h3&gt;
  
  
  Language Used
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Back-end:&lt;/strong&gt; Golang, Dotnet and Python&lt;br&gt;
&lt;strong&gt;Front-end:&lt;/strong&gt; Vue.js and Tailwind.js&lt;/p&gt;
&lt;h3&gt;
  
  
  Link to Code
&lt;/h3&gt;


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--A9-wwsHG--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev.to/assets/github-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/leoguilen"&gt;
        leoguilen
      &lt;/a&gt; / &lt;a href="https://github.com/leoguilen/search-engine-microservices-with-redis-stack"&gt;
        search-engine-microservices-with-redis-stack
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      Search engine system for articles using redis technology stack. This project was produced for the participation of the Redis hackathon promoted by the Dev Community. https://dev.to/devteam/announcing-the-redis-hackathon-on-dev-3248
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;Articles Discovery Engine&lt;/h1&gt;
&lt;/div&gt;
&lt;p&gt;Search engine system for articles using the redis technology stack. A tool that extracts articles and streams this information to the redis cluster, where processing is done with Redis Gears to add the data as JSON documents in RedisJson and indexes it to enable search with RediSearch.&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Architecture Diagram&lt;/h2&gt;
&lt;/div&gt;
&lt;p&gt;&lt;a href="https://github.com/leoguilen/search-engine-microservices-with-redis-stack./docs/arch.png"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--msnQYk0c--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://github.com/leoguilen/search-engine-microservices-with-redis-stack./docs/arch.png" alt="Architecture Diagram Image"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Features demo&lt;/h2&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Demo Web Application:
&lt;a href="https://github.com/leoguilen/search-engine-microservices-with-redis-stack"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Fc0YVCym--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://github.com/leoguilen/search-engine-microservices-with-redis-stack./docs/articles-discovery-frontend-demo.gif" alt="Demo Web Application"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;RedisJSON Data:
&lt;a href="https://github.com/leoguilen/search-engine-microservices-with-redis-stack"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--MLVM_VYh--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://github.com/leoguilen/search-engine-microservices-with-redis-stack./docs/redis-json-data.png" alt="RedisJSON data"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;RedisGears Function Registered:
&lt;a href="https://github.com/leoguilen/search-engine-microservices-with-redis-stack"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--TA7hc88F--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://github.com/leoguilen/search-engine-microservices-with-redis-stack./docs/redis-gears-func.png" alt="RedisGears function"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;RediSearch search indexed documents:
&lt;a href="https://github.com/leoguilen/search-engine-microservices-with-redis-stack"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--rCcKpOPs--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://github.com/leoguilen/search-engine-microservices-with-redis-stack./docs/redisearch-searching-data.png" alt="RediSearch searching"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Backend Query API:
&lt;a href="https://github.com/leoguilen/search-engine-microservices-with-redis-stack"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--vYu68NUn--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://github.com/leoguilen/search-engine-microservices-with-redis-stack./docs/query-api-search-articles.png" alt="Query Api search response data"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;How it works&lt;/h2&gt;

&lt;/div&gt;
&lt;div class="markdown-heading"&gt;
&lt;h3 class="heading-element"&gt;How the data is stored:&lt;/h3&gt;

&lt;/div&gt;
&lt;p&gt;Refer to &lt;a href="https://github.com/redis-developer/basic-analytics-dashboard-redis-bitmaps-nodejs#how-the-data-is-stored"&gt;this example&lt;/a&gt; for a more detailed example of what you need for this section.&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h3 class="heading-element"&gt;How the data is accessed:&lt;/h3&gt;

&lt;/div&gt;
&lt;p&gt;Refer to &lt;a href="https://github.com/redis-developer/basic-analytics-dashboard-redis-bitmaps-nodejs#how-the-data-is-accessed"&gt;this example&lt;/a&gt; for a more detailed example of what you need for this section.&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;How to run it locally?&lt;/h2&gt;

&lt;/div&gt;
&lt;div class="markdown-heading"&gt;
&lt;h3 class="heading-element"&gt;Prerequisites&lt;/h3&gt;

&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Go - v1.18.4&lt;/li&gt;
&lt;li&gt;Dotnet - v6.0.108&lt;/li&gt;
&lt;li&gt;Docker - v20.10.14 (optional)&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="markdown-heading"&gt;
&lt;h3 class="heading-element"&gt;Local installation&lt;/h3&gt;

&lt;/div&gt;
&lt;p&gt;Go to &lt;code&gt;/deploy/docker&lt;/code&gt; folder (&lt;code&gt;cd ./deploy/docker&lt;/code&gt;) and then:&lt;/p&gt;
&lt;div class="snippet-clipboard-content notranslate position-relative overflow-auto"&gt;
&lt;pre class="notranslate"&gt;&lt;code&gt;# run docker compose or install redis manually&lt;/code&gt;&lt;/pre&gt;…&lt;/div&gt;
&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/leoguilen/search-engine-microservices-with-redis-stack"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;h3&gt;
  
  
  Additional Resources / Info
&lt;/h3&gt;

&lt;p&gt;Primary functionally demo:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7tilc8nxajxc8korpcfs.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7tilc8nxajxc8korpcfs.gif" alt="Primary functionally demo" width="" height=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Collaborators
&lt;/h3&gt;

&lt;p&gt;Solo project by &lt;a class="mentioned-user" href="https://dev.to/lguilen"&gt;@lguilen&lt;/a&gt; &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;em&gt;Check out &lt;a href="https://redis.io/docs/stack/get-started/clients/#high-level-client-libraries"&gt;Redis OM&lt;/a&gt;, client libraries for working with Redis as a multi-model database.&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Use &lt;a href="https://redis.info/redisinsight"&gt;RedisInsight&lt;/a&gt; to visualize your data in Redis.&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Sign up for a &lt;a href="https://redis.info/try-free-dev-to"&gt;free Redis database&lt;/a&gt;.&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>redishackathon</category>
      <category>programming</category>
      <category>go</category>
      <category>dotnet</category>
    </item>
    <item>
      <title>Temperature and Humidity Monitor - Using IoT, Azure and Xamarin</title>
      <dc:creator>Leonardo C. Guilen</dc:creator>
      <pubDate>Sat, 05 Mar 2022 18:18:30 +0000</pubDate>
      <link>https://dev.to/lguilen/temperature-and-humidity-monitor-using-iot-azure-and-xamarin-2ih0</link>
      <guid>https://dev.to/lguilen/temperature-and-humidity-monitor-using-iot-azure-and-xamarin-2ih0</guid>
      <description>&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/fZ4E-QXCR_s"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;h3&gt;
  
  
  Overview of My Submission
&lt;/h3&gt;

&lt;p&gt;IoT-based temperature and humidity monitoring system with NodeMCU ESP8266 attached to DHT11 sensor that captures local temperature and humidity information, and integrates with Azure IoT Hub, which sends measurement events such as messages to Azure Service Bus. Azure Functions consume these messages by persisting and making data available for viewing in an Xamarin App. &lt;/p&gt;

&lt;h3&gt;
  
  
  Submission Category:
&lt;/h3&gt;

&lt;p&gt;Wacky Wildcards&lt;/p&gt;

&lt;h3&gt;
  
  
  Link to Code on GitHub
&lt;/h3&gt;

&lt;p&gt;The code for both the app and the IoT part is present in the following GitHub repo:&lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev.to%2Fassets%2Fgithub-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/leoguilen" rel="noopener noreferrer"&gt;
        leoguilen
      &lt;/a&gt; / &lt;a href="https://github.com/leoguilen/nodemcu_azureIoTHub_xamarinApp" rel="noopener noreferrer"&gt;
        nodemcu_azureIoTHub_xamarinApp
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      IoT-based temperature and humidity monitoring system which is connected to Microsoft Azure. This is a Xamarin app to display real-time data from local sensors in an environment on a mobile device.
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;Temperature And Humidity Monitor&lt;/h1&gt;

&lt;/div&gt;
&lt;p&gt;IoT-based temperature and humidity monitoring system which is connected to Microsoft Azure. This is a Xamarin app to display real-time data from local sensors in an environment on a mobile device.&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Architecture&lt;/h2&gt;

&lt;/div&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://github.com/leoguilen/nodemcu_azureIoTHub_xamarinAppdocs/project-architecture.jpeg"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fgithub.com%2Fleoguilen%2Fnodemcu_azureIoTHub_xamarinAppdocs%2Fproject-architecture.jpeg" alt="Project architecture image"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;License&lt;/h2&gt;

&lt;/div&gt;
&lt;p&gt;Copyright 2022 Leonardo Guilen&lt;/p&gt;
&lt;p&gt;Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at&lt;/p&gt;
&lt;div class="snippet-clipboard-content notranslate position-relative overflow-auto"&gt;&lt;pre class="notranslate"&gt;&lt;code&gt;http://www.apache.org/licenses/LICENSE-2.0
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.&lt;/p&gt;
&lt;/div&gt;



&lt;/div&gt;
&lt;br&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/leoguilen/nodemcu_azureIoTHub_xamarinApp" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;br&gt;


&lt;h3&gt;
  
  
  Additional Resources / Info
&lt;/h3&gt;

&lt;p&gt;System Architecture Image:&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftvqc1oje7egzv7njwgvk.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftvqc1oje7egzv7njwgvk.jpeg" alt="System Architecture Image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  References
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.codecauldron.dev/2021/04/25/connecting-an-esp8266-to-the-azure-iot-hub/" rel="noopener noreferrer"&gt;Connecting an ESP8266 to Azure Iot Hub&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://blog.avotrix.com/azure-iot-hub-with-esp8266/" rel="noopener noreferrer"&gt;Azure Iot Hub with ESP8266&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://docs.microsoft.com/en-us/azure/iot-hub/" rel="noopener noreferrer"&gt;Azure IoT Hub Documentation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://electrosome.com/interfacing-dht11-sensor-esp8266/" rel="noopener noreferrer"&gt;Interfacing DHT11 sensor ESP8266&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://create.arduino.cc/projecthub/pibots555/how-to-connect-dht11-sensor-with-arduino-uno-f4d239" rel="noopener noreferrer"&gt;How to connect DHT11 sensor with arduino&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>azuretrialhack</category>
      <category>csharp</category>
      <category>iot</category>
    </item>
  </channel>
</rss>
