<?xml version="1.0" ?>
  <rss
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:content="http://purl.org/rss/1.0/modules/content/"
    xmlns:atom="http://www.w3.org/2005/Atom"
    version="2.0"
  >
    <channel>
        <title><![CDATA[William Lyon]]></title>
        <link>https://lyonwj.com</link>
        <description>
          <![CDATA[Software, technology, startups, etc.]]>
        </description>
        <language>en</language>
        <lastBuildDate>Fri, 23 Feb 2024 07:54:08 +0000</lastBuildDate>
        
          <item>
            <title><![CDATA[Boulder StartupWeek 2014]]></title>
            <link>https://lyonwj.com/blog/boulder-startupweek-2014</link>
            <pubDate>Thu, 22 May 2014 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/boulder-startupweek-2014</guid>
            <description>
            <![CDATA[My experiences during Boulder StartupWeek 2014.]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Congressional PageRank - Analyzing US Congress With Neo4j and Apache Spark]]></title>
            <link>https://lyonwj.com/blog/congressional-pagerank</link>
            <pubDate>Sun, 11 Oct 2015 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/congressional-pagerank</guid>
            <description>
            <![CDATA[This post shows how we can apply graph analytics to US Congressional data to find influential legislators in Congress. Using the Mazerunner open source graph analytics project we are able to use Apache Spark GraphX alongside Neo4j to run the PageRank algorithm on a collaboration graph of US Congress.]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Content Recommendation From Links Shared on Twitter Using Neo4j and Python]]></title>
            <link>https://lyonwj.com/blog/content-recommendation-from-links-shared-on-twitter</link>
            <pubDate>Thu, 28 May 2015 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/content-recommendation-from-links-shared-on-twitter</guid>
            <description>
            <![CDATA[Using article links shared on Twitter to determine user interests, we show how to build a personalized content recommender system to suggest other articles the user might be interested in.]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Crawling APIs Using Neo4j - Building The Star Wars Graph]]></title>
            <link>https://lyonwj.com/blog/crawling-public-api-neo4j</link>
            <pubDate>Mon, 14 Dec 2015 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/crawling-public-api-neo4j</guid>
            <description>
            <![CDATA[A common task when working with data from APIs is crawling the API and inserting the results in a database. In this example we will import data into Neo4j by crawling a public API, building a graph in Neo4j as we go along. We will use Neo4j as a queuing mechanism to store URLs for placeholder resources waiting to be fetched.]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Building An Election Night Dashboard With Neo4j Graph Apps: Bloom, Charts, And Neomap]]></title>
            <link>https://lyonwj.com/blog/election-night-dashboard-neo4j-charts-bloom-visualization</link>
            <pubDate>Sat, 28 Nov 2020 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/election-night-dashboard-neo4j-charts-bloom-visualization</guid>
            <description>
            <![CDATA[Using low code graph apps to build data visualizations with Neo4j.]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Applying NLP and Entity Extraction To The Russian Twitter Troll Tweets In Neo4j (and more Python!)]]></title>
            <link>https://lyonwj.com/blog/entity-extraction-russian-troll-tweets-neo4j</link>
            <pubDate>Wed, 15 Nov 2017 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/entity-extraction-russian-troll-tweets-neo4j</guid>
            <description>
            <![CDATA[Natural language processing (NLP) techniques like entity extraction can be used to help make sense of a large text corpus. In this post we apply named entity resolution to the scraped Russian Twitter Troll tweets to try to get a better understanding of how these trolls were spreading fake news.]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Finding The Perfect Christmas Tree With USFS Motor Vehicle User Map Data, QGIS, & SedonaDB]]></title>
            <link>https://lyonwj.com/blog/finding-christmas-tree-us-forest-service-mvum-qgis-sedonadb-wherobots</link>
            <pubDate>Mon, 04 Dec 2023 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/finding-christmas-tree-us-forest-service-mvum-qgis-sedonadb-wherobots</guid>
            <description>
            <![CDATA[Using aerial imagery and Spatial SQL to explore Forest Service road networks]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Geocoding Paradise Papers Addresses In Neo4j To Build Interactive Geographical Data Visualizations]]></title>
            <link>https://lyonwj.com/blog/geocoding-paradise-papers-neo4j-spatial-visualization</link>
            <pubDate>Tue, 28 Nov 2017 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/geocoding-paradise-papers-neo4j-spatial-visualization</guid>
            <description>
            <![CDATA[This post explores how to build spatial data visualizations using address data from the Paradise Papers leak of offshore corporations and the people connected to them. First, we geocode all addresses in the leaked data, then build a heatmap and interactive map for exploring the data of offshore legal entities.]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Adding Frontend Features With Next.js, Chakra UI, & Apollo Client]]></title>
            <link>https://lyonwj.com/blog/grandstack-podcast-app-chakra-ui-next-js-graphql-apollo-client</link>
            <pubDate>Sun, 21 Mar 2021 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/grandstack-podcast-app-chakra-ui-next-js-graphql-apollo-client</guid>
            <description>
            <![CDATA[Building A GRANDstack Podcast App: Episode 6]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Building A Responsive Navigation Bar And Podcast Episode Feed With The Chakra UI React Component Library]]></title>
            <link>https://lyonwj.com/blog/grandstack-podcast-app-chakra-ui-responsive-nav-bar-episode-component</link>
            <pubDate>Sun, 21 Mar 2021 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/grandstack-podcast-app-chakra-ui-responsive-nav-bar-episode-component</guid>
            <description>
            <![CDATA[Building A GRANDstack Podcast App: Episode 5]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Getting Started With Next.js and GraphQL Authentication]]></title>
            <link>https://lyonwj.com/blog/grandstack-podcast-app-next-js-graphql-authentication</link>
            <pubDate>Sun, 24 Jan 2021 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/grandstack-podcast-app-next-js-graphql-authentication</guid>
            <description>
            <![CDATA[Building A GRANDstack Podcast App: Episode 4]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Parsing And Importing XML With Neo4j: Adding Episodes and Playlists To GRANDcast.FM Podcast App]]></title>
            <link>https://lyonwj.com/blog/grandstack-podcast-app-parsing-xml-neo4j-rss-episodes-playlists</link>
            <pubDate>Sat, 09 Jan 2021 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/grandstack-podcast-app-parsing-xml-neo4j-rss-episodes-playlists</guid>
            <description>
            <![CDATA[Building A GRANDstack Podcast App: Episode 3]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Podcast Search GraphQL API With Neo4j And The Podcast Index]]></title>
            <link>https://lyonwj.com/blog/grandstack-podcast-app-podcast-search-graphql-api</link>
            <pubDate>Sun, 06 Dec 2020 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/grandstack-podcast-app-podcast-search-graphql-api</guid>
            <description>
            <![CDATA[Building A GRANDstack Podcast App: Episode 1]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[GRANDcast.FM: User Auth & Podcast Subscribe Functionality ]]></title>
            <link>https://lyonwj.com/blog/grandstack-podcast-app-user-auth-podcast-subscribe</link>
            <pubDate>Fri, 11 Dec 2020 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/grandstack-podcast-app-user-auth-podcast-subscribe</guid>
            <description>
            <![CDATA[Building A GRANDstack Podcast App: Episode 2]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Analyzing the Graph of Thrones]]></title>
            <link>https://lyonwj.com/blog/graph-of-thrones-neo4j-social-network-analysis</link>
            <pubDate>Sun, 26 Jun 2016 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/graph-of-thrones-neo4j-social-network-analysis</guid>
            <description>
            <![CDATA[Using graphs to analyze character interactions in the popular Game of Thrones series. Social network analysis with Neo4j.]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Graph Data Visualization With GraphQL & react-force-graph]]></title>
            <link>https://lyonwj.com/blog/graph-visualization-with-graphql-react-force-graph</link>
            <pubDate>Wed, 29 Sep 2021 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/graph-visualization-with-graphql-react-force-graph</guid>
            <description>
            <![CDATA[Building Interactive Graph Data Visualizations With GraphQL]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Building A GraphQL Server With Next.js]]></title>
            <link>https://lyonwj.com/blog/graphql-server-next-js-neo4j-aura-vercel</link>
            <pubDate>Tue, 27 Jul 2021 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/graphql-server-next-js-neo4j-aura-vercel</guid>
            <description>
            <![CDATA[Using Next.js API Routes And Deploying To Vercel & Neo4j Aura]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Importing Overture Maps Data Into Neo4j]]></title>
            <link>https://lyonwj.com/blog/importing-overture-maps-neo4j-aws-athena-spatial-sql-query</link>
            <pubDate>Mon, 25 Sep 2023 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/importing-overture-maps-neo4j-aws-athena-spatial-sql-query</guid>
            <description>
            <![CDATA[A look at loading points of interest from the Overture Maps public dataset into the Neo4j graph database, plus writing Spatial SQL queries with AWS Athena.]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Introducing legis-graph - US Congressional Data With Govtrack and Neo4j]]></title>
            <link>https://lyonwj.com/blog/legis-graph-congressional-data-using-neo4j</link>
            <pubDate>Sun, 20 Sep 2015 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/legis-graph-congressional-data-using-neo4j</guid>
            <description>
            <![CDATA[Interactions among members of any large organization are naturally a graph, yet the tools we use to analyze data about these organizations often ignore the graphiness of the data and instead map the data into structures (such as relational databases) that make taking advantage of the relationships in the data much more difficult when it comes time to analyze the data. Collaboration networks are a perfect example. So we focus on one of the most powerful collaboration networks in the world, the US Congress.]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Adding Geospatial Indexing to legis-graph With Neo4j and Mapbox]]></title>
            <link>https://lyonwj.com/blog/legis-graph-spatial-indexing</link>
            <pubDate>Mon, 21 Mar 2016 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/legis-graph-spatial-indexing</guid>
            <description>
            <![CDATA[Adding geospatial indexing and map visualizations to legis-graph]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Spatial Search Functionality With Neo4j]]></title>
            <link>https://lyonwj.com/blog/making-sense-of-geospatial-data-with-knowledge-graphs-neo4j</link>
            <pubDate>Tue, 03 Jan 2023 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/making-sense-of-geospatial-data-with-knowledge-graphs-neo4j</guid>
            <description>
            <![CDATA[Radius Distance, Bounding Box, and Point in Polygon Search With Graphs]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Mapping Airports of the World With Neo4j Spatial and Openflights]]></title>
            <link>https://lyonwj.com/blog/mapping-the-worlds-airports-with-neo4j-spatial-and-openflights-part-1</link>
            <pubDate>Thu, 13 Mar 2014 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/mapping-the-worlds-airports-with-neo4j-spatial-and-openflights-part-1</guid>
            <description>
            <![CDATA[Loading every airport in the world into Neo4j Spatial for the purposes of route finding.]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Analyzing A Local Startup Ecosystem With Mattermark, GraphQL, Apollo Client, and Neo4j]]></title>
            <link>https://lyonwj.com/blog/mattermark-api-graphql-neo4j-startup-funding</link>
            <pubDate>Thu, 27 Apr 2017 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/mattermark-api-graphql-neo4j-startup-funding</guid>
            <description>
            <![CDATA[Many web services are converting their publicly facing APIs from REST to GraphQL. Companies like GitHub and Shopify have been leading this transition to GraphQL. In this post we take a look at how we can query the new Mattermark GraphQL API using Apollo Client, storing the results in Neo4j to then see what we can learn about a local startup ecosystem.]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Building A Location Aware Endpoint Using Neo4j And Cloudflare Workers]]></title>
            <link>https://lyonwj.com/blog/neo4j-http-api-edge-workers</link>
            <pubDate>Fri, 20 Nov 2020 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/neo4j-http-api-edge-workers</guid>
            <description>
            <![CDATA[Using the new Jolt format with HTTP in Neo4j 4.2 with edge network handlers.]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Using Neo4j Spatial Procedures in legis-graph-spatial]]></title>
            <link>https://lyonwj.com/blog/neo4j-spatial-procedures-congressional-boundaries</link>
            <pubDate>Tue, 09 Aug 2016 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/neo4j-spatial-procedures-congressional-boundaries</guid>
            <description>
            <![CDATA[Updating legis-graph-spatial to make use of the new spatial procedures in Neo4j 3.0 and the official Neo4j Javascript driver. Procedures provide a new API for interacting with the Neo4j spatial extension and are callable from Cypher.]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Building a text adjacency graph from product reviews with the Best Buy API]]></title>
            <link>https://lyonwj.com/blog/nlp-graph-model</link>
            <pubDate>Thu, 07 Jan 2016 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/nlp-graph-model</guid>
            <description>
            <![CDATA[Finding real world text datasets to analyze can make playing around with NLP tasks much more interesting. This quick post shows how to build a word adjacency graph in Neo4j using product reviews from the Best Buy API.]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Natural Language Processing With Neo4j - Mining Paradigmatic Word Associations]]></title>
            <link>https://lyonwj.com/blog/nlp-with-neo4j</link>
            <pubDate>Tue, 16 Jun 2015 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/nlp-with-neo4j</guid>
            <description>
            <![CDATA[Discovering paradigmatic word associations is one of the core tasks of Natural Language Processing. In this post we explore a graph based method for mining paradigmatic word associations from a text corpus.]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[No Cost Data Scraping With GitHub Actions And Neo4j Aura]]></title>
            <link>https://lyonwj.com/blog/no-cost-data-scraping-github-actions-neo4j-aura</link>
            <pubDate>Tue, 20 Jul 2021 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/no-cost-data-scraping-github-actions-neo4j-aura</guid>
            <description>
            <![CDATA[Using The Flat Data GitHub Action To Import Data From The Lobste.rs News Site]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Notes From GraphConnect 2014]]></title>
            <link>https://lyonwj.com/blog/notes-from-graphconnect-2014</link>
            <pubDate>Tue, 14 Oct 2014 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/notes-from-graphconnect-2014</guid>
            <description>
            <![CDATA[GraphConnect is an annual conference for graph database enthusiasts. These are my notes from GraphConnect 2014 in San Francisco.]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Scraping Russian Twitter Trolls With Python, Neo4j, and GraphQL]]></title>
            <link>https://lyonwj.com/blog/scraping-russian-twitter-trolls-python-neo4j</link>
            <pubDate>Sun, 12 Nov 2017 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/scraping-russian-twitter-trolls-python-neo4j</guid>
            <description>
            <![CDATA[In this post we explore how to scrape tweets from Internet Archive for Russian Twitter Troll accounts, import into Neo4j for analysis, and how to build a simple GraphQL API exposing the data through GraphQL.]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Introducing The Spatial Cypher Cheat Sheet]]></title>
            <link>https://lyonwj.com/blog/spatial-cypher-cheat-sheet</link>
            <pubDate>Thu, 22 Jun 2023 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/spatial-cypher-cheat-sheet</guid>
            <description>
            <![CDATA[A resource for working with geospatial data in Neo4j.]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Startup Chile Week 1]]></title>
            <link>https://lyonwj.com/blog/startup-chile-week-1</link>
            <pubDate>Wed, 19 Nov 2014 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/startup-chile-week-1</guid>
            <description>
            <![CDATA[What have I been doing in Santiago Chile as part of Startup Chile? I share some of my experiences from Startup Chile Generation 11.]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Combining The BuzzFeed Trumpworld Graph with Government Contracting Data in Neo4j]]></title>
            <link>https://lyonwj.com/blog/trumpworld-us-contracting-data-neo4j</link>
            <pubDate>Mon, 30 Jan 2017 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/trumpworld-us-contracting-data-neo4j</guid>
            <description>
            <![CDATA[One of the powers of working with graph databases is the ability to combine disparate datasets and query across them. Today we will look at how we can combine the BuzzFeed Trumpworld graph with data about federal government contracts from USASpending.gov, allowing us to examine any government contracts that were awarded to organizations that appear in Trumpworld.]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Twizzard, A Tweet Recommender System Using Neo4j]]></title>
            <link>https://lyonwj.com/blog/twizzard-a-tweet-recommender-system-using-neo4j</link>
            <pubDate>Thu, 13 Mar 2014 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/twizzard-a-tweet-recommender-system-using-neo4j</guid>
            <description>
            <![CDATA[A system for ranking tweets based on user affinity and time decay.]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Using Neo4j Spatial and Mapbox to search for businesses by location]]></title>
            <link>https://lyonwj.com/blog/using-neo4j-spatial-and-leaflet-js-with-mapbox</link>
            <pubDate>Mon, 11 May 2015 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/using-neo4j-spatial-and-leaflet-js-with-mapbox</guid>
            <description>
            <![CDATA[We show how to load data from the Yelp Academic Dataset into Neo4j, then build a webapp to perform geospatial queries on the data and visualize the results on a map.]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Visualizing Correlates of War Data With Leaflet.js]]></title>
            <link>https://lyonwj.com/blog/visualizing-correlates-of-war-date-with-leaftlet-js</link>
            <pubDate>Fri, 14 Feb 2014 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/visualizing-correlates-of-war-date-with-leaftlet-js</guid>
            <description>
            <![CDATA[Using data about global militarized interstate disputes (wars) we build some geospatial visualizations to analyze data about war fatalities throughout history.]]>
            </description>
            
        </item>,
          <item>
            <title><![CDATA[Why I Joined Wherobots Plus A Look At Apache Sedona]]></title>
            <link>https://lyonwj.com/blog/why-i-joined-wherobots-apache-sedona-and-spatial-data-science</link>
            <pubDate>Wed, 18 Oct 2023 00:00:00 +0000</pubDate>
            <guid isPermaLink="false">https://lyonwj.com/blog/why-i-joined-wherobots-apache-sedona-and-spatial-data-science</guid>
            <description>
            <![CDATA[My take on the exciting world of spatial database technology plus a look at getting started with Apache Sedona.]]>
            </description>
            
        </item>
    </channel>
  </rss>