Skip to content

Commit

Permalink
updates following my own review #91
Browse files Browse the repository at this point in the history
  • Loading branch information
nelsonic committed Aug 17, 2022
1 parent 4bd94e6 commit d476c5e
Show file tree
Hide file tree
Showing 2 changed files with 45 additions and 22 deletions.
48 changes: 31 additions & 17 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,17 +12,17 @@ The software and systems we use to build the **`dwyl`** platform.
- [Why?](#why)
- [What?](#what)
- [The `PETAL` Stack](#the-petal-stack)
- [`Phoenix`](#phoenix)
- [**`Phoenix`**](#phoenix)
- [`Phoenix` the "Most Loved" Framework in 2022](#phoenix-the-most-loved-framework-in-2022)
- [**`Elixir`**](#elixir)
- [`Elixir` is `#2` in 2022](#elixir-is-2-in-2022)
- [`Tailwind CSS`](#tailwind-css)
- [`Alpine.js`](#alpinejs)
- [`LiveView`](#liveview)
- [**`Tailwind CSS`**](#tailwind-css)
- [**`Alpine.js`**](#alpinejs)
- [**`LiveView`**](#liveview)
- [_Beginner_ Tutorials?](#beginner-tutorials)
- [Database?](#database)
- [We _Prefer_ `PostgreSQL`](#we-prefer-postgresql)
- [See: List of Organizations Using PostgreSQL](#see-list-of-organizations-using-postgresql)
- [List of Organizations Using PostgreSQL](#list-of-organizations-using-postgresql)
- [Operating System?](#operating-system)
- [Continuous Integration](#continuous-integration)
- [Deployment](#deployment)
Expand All @@ -42,7 +42,7 @@ The software and systems we use to build the **`dwyl`** platform.
- [Alternative Databases?](#alternative-databases)
- [Radical Simplicity](#radical-simplicity)
- [Other Tech/Tools?](#other-techtools)
- [How to propose new tech/tools?](#how-to-propose-new-techtools)
- [How to Propose `NEW` Tech/Tools?](#how-to-propose-new-techtools)

# Why?

Expand Down Expand Up @@ -81,7 +81,7 @@ and ***world-class quality***!
"PETAL" is an acronym<sup>1</sup>
for the following elements:

### `Phoenix`
### **`Phoenix`**

**`Phoenix`** is a Web Application Framework
that does not compromise
Expand Down Expand Up @@ -114,7 +114,8 @@ used by the **`Phoenix`** framework.
**`Elixir`** is a _beautiful_ language
written _from scratch_ to be
***friendly, concise and efficient***.
***Yes***, `Elixir` not as "_popular_"
***Yes***, `Elixir` not as
["_mainstream_"](https://github.com/dwyl/learn-elixir/issues/102#issuecomment-1105416646)
as `JavaScript`, `Java`, `C#` or `PHP`,
but the adoption is _growing rapidly_ and most importantly
many _experienced_ developers are gravitating towards and
Expand All @@ -139,7 +140,7 @@ This is a good measure of how much people _enjoy_ working
in the language.
And as we all know people who _enjoy_ their work
are _better_ at doing it!
### `Tailwind CSS`
### **`Tailwind CSS`**

**`Tailwind`** is the most _sane_ way
of creating a _beautiful_ web app UI
Expand All @@ -152,28 +153,30 @@ and _local_ to that component.
see:
[dwyl/**learn-tailwind**](https://github.com/dwyl/learn-tailwind)

### `Alpine.js`
### **`Alpine.js`**

**`Alpine.js`** is a lightweight library for enhancing interactions
in a web application. It's declarative, responsive and easy to learn.
`Alphine.js` plays well with `LiveView` for progressive enhancements.
see:
[dwyl/**learn-alpine.js**](https://github.com/dwyl/learn-alpine.js)

### `LiveView`
### **`LiveView`**

**`LiveView`** is a radically simplified way
of building realtime web apps with significantly less code.

<br />

## _Beginner_ Tutorials?

We have _crafted_ a "***Complete Beginner's Guide***"
for each element in the stack, so that we:
+ ***Document our collective learning***
`while` we are building projects.
`while` we are building projects. <br />
(_because as humans
we **forget fast**
unless we **capture** it_!)
unless we **capture** it **immediately**_!)
+ ***Share*** our knowledge with other people so we can
+ Help to train (_potential_) new team members
as quickly/effectively as possible.
Expand Down Expand Up @@ -204,9 +207,10 @@ for learning **`Phoenix LiveView`**:
4. Chat:
[dwyl/phoenix-liveview-**chat**-example](https://github.com/dwyl/phoenix-liveview-chat-example)

And finally, we have built a fully working MVP version of our App:
And we have built a fully working MVP version of our App:
[dwyl/**mvp**](https://github.com/dwyl/mvp)


## Database?

The _reason_ we do not _specify_ our Database
Expand Down Expand Up @@ -244,9 +248,8 @@ on `Postgres` as their `main` database_. <br />
based on who `else` is using it,_ <br />
> _but it's **good to know** that **plenty** of teams
are getting **excellent results** with `Postgres`!_
<br />

##### See: [List of Organizations Using PostgreSQL](https://github.com/dwyl/learn-postgresql/issues/31)
##### [List of Organizations Using PostgreSQL](https://github.com/dwyl/learn-postgresql/issues/31)

We have used _most_ of the "_popular_" Relational Databases.
e.g: `MySQL`, `Microsoft SQL Server`,
Expand Down Expand Up @@ -691,6 +694,17 @@ complex tech that is only relevant to 0.1% of mega scale companies:
![image](https://user-images.githubusercontent.com/194400/185088279-241c2d23-3986-4820-9b59-7acb6f9b8235.png)

We agree.

<br />

If by some luck our product reaches the point where
we _need_ mega scale
(_millions of `people` creating billions of `items`_)
we know that our chosen stack will scale just fine.

Before then the complexity will only slow us down
and reduce the chances of success.

## Other Tech/Tools?

We have written about
Expand All @@ -710,7 +724,7 @@ requested by a person _using_ our product,
then we will **100%** consider a technology
that enables us to deliver it.

## How to propose new tech/tools?
## How to Propose `NEW` Tech/Tools?

The way to _propose_ a specific tech/tool
is simple:
Expand Down
19 changes: 14 additions & 5 deletions flutter.md
Original file line number Diff line number Diff line change
Expand Up @@ -79,9 +79,10 @@ See:

![google-apps-built-with-flutter](https://user-images.githubusercontent.com/194400/71911727-267a4e00-316c-11ea-9ad9-49755641affb.png)

## Cross-platform Single Codebase Native App

Flutter is _mobile first_, has full/official support for Web/PWAs
using the _same_ code base as the Native Mobile Apps.
using the _same_ code base as the Native Mobile and Desktop Apps.

![image](https://user-images.githubusercontent.com/194400/71738403-6bda0b00-2e4e-11ea-85d1-0d9aefb7c1e4.png)

Expand All @@ -92,6 +93,8 @@ and it's only getting better! <br />
See:
[medium.com/flutter/whats-new-in-flutter-3-8c74a5bc32d0](https://medium.com/flutter/whats-new-in-flutter-3-8c74a5bc32d0)

Google is investing _heavily_ in Flutter,
it's used for the Google Assistant, Google Ads and Stadia!

## Guiding Principals

Expand All @@ -118,9 +121,6 @@ https://flutter.dev/docs/cookbook/persistence/sqlite
[youtube.com/watch?v=NfNdXgJZfFo](https://www.youtube.com/watch?v=NfNdXgJZfFo&list=PLjxrf2q8roU0o0wKRJTjyN0pSUA6TI8lg)


Google is investing _heavily_ in Flutter,
it's used for the Google Assistant, Google Ads and Stadia!

<!--
### What about `Elm`?
Expand All @@ -143,7 +143,7 @@ By using `LiveView`, `Tailwind` and `Alpine.js`
(AKA the `PETAL` stack)
to build features as a Web App _first_
we iterate _fast_
and maintain full control over the
and maintain full control over
[**`SEO`**](https://github.com/dwyl/technology-stack/issues/81#issuecomment-1146670657).

Once the feature is _built_ for the Web
Expand Down Expand Up @@ -175,6 +175,15 @@ We need to update it and add a section on Benchmarks:
https://www.techempower.com/benchmarks
-->

## `Flutter`

We are recording our learning of `Flutter` in:
[dwyl/learn-flutter](https://github.com/dwyl/learn-flutter)

All the _practical_ detail is there.


<br />

# Background

Expand Down

0 comments on commit d476c5e

Please sign in to comment.