March 2022 Summaries
4 posts from Felt
Filter
Month:
Year:
Post Summaries
Back to Blog
Elixir's configuration management has evolved significantly over the years, introducing various improvements to overcome its initial complexity and rough edges. Historically, Elixir recommended compile-time configuration using application environment variables, but this approach faced criticism due to its downsides, such as the necessity for recompilation upon configuration changes. Recent Elixir versions have shifted towards runtime configuration, notably with the introduction of config/runtime.exs in Elixir 1.11, which allows configuration to be set at runtime rather than compile-time, avoiding several pitfalls like race conditions in tests and the need for recompilation. The Elixir community now encourages minimizing compile-time configuration, especially for environment-specific settings, and recommends using environment variables stored in .env files for development. For complex projects, a separate runtime configuration file for each environment is suggested to manage large configurations effectively. These advancements aim to make Elixir applications more flexible and maintainable by promoting best practices in configuration management.
Mar 31, 2022
1,885 words in the original blog post.
Elixir's configuration system has evolved significantly, addressing longstanding challenges and introducing improvements in recent versions to enhance runtime flexibility and reduce reliance on compile-time configurations. Historically, Elixir applications often used compile-time configurations, which posed challenges such as requiring recompilation upon configuration changes and creating difficulties in managing secrets across deployment environments. Over time, the Elixir community has shifted towards runtime configurations, with updates in Elixir 1.9 to 1.11 introducing new mechanisms like `config/runtime.exs` to facilitate this. These changes promote better practices by avoiding the pitfalls of compile-time configurations, such as race conditions in tests and environment-specific releases. Modern approaches encourage the use of runtime configurations, often leveraging tools like dotenv_parser for development, and advocate for localizing configurations to their usage context. While this transition offers benefits like environment-agnostic releases and more reliable handling of environment variables, it also necessitates thoughtful management in complex projects, often through configuration helpers and separate runtime configuration files for different environments.
Mar 31, 2022
1,885 words in the original blog post.
Felt aims to simplify the creation of geospatial visualizations by offering an intuitive platform for mapping that provides vast implicit context, making maps a unique storytelling medium. The current process of transforming a blank map into meaningful visualizations is complex and often requires skilled professionals to navigate data sources and APIs. To address this, Felt is developing tools that enhance flexibility, maintainability, and scalability, reducing the complexity for both users and their internal team. They have chosen to use PostgreSQL and SQLAlchemy, tools not traditionally known for flexibility, but which have provided unexpected advantages in their approach. SQLAlchemy’s reflect API, for instance, allows for schema flexibility by enabling users to create and manipulate their own tables, which is crucial for Felt's Data Library API that processes user data to generate map features. This approach exemplifies how Felt is leveraging technology to transform the user experience in map-making, focusing on ease of use and efficient data handling.
Mar 02, 2022
583 words in the original blog post.
Felt aims to become the premier platform for creating maps on the internet by simplifying the process of turning maps into engaging geospatial visualizations. Recognizing the complexity faced by skilled data professionals in transforming data into understandable visual forms, Felt seeks to provide a more accessible solution for both users and its internal team. By leveraging PostgreSQL and SQLAlchemy, a relational database and Object-Relational Mapping tool, Felt finds unexpected flexibility and maintainability, crucial for their mission. SQLAlchemy’s reflect API allows the team to handle user-generated schemas efficiently, facilitating user interaction with data through their Data Library API, which processes user-uploaded files for map visualization. Additionally, the use of Retool aids in minimizing the time required for developing and maintaining user interfaces, ultimately streamlining the workflow and enhancing the storytelling potential of maps.
Mar 02, 2022
583 words in the original blog post.