HN user

pgjones

173 karma

pgjones.dev

Quart, Flask, Werkzeug and Hypercorn maintainer, active in the Python async community.

Posts13
Comments33
View on HN

The presence of Absent removes the entire expression, and if that removal results in an empty clause (or group) it will remove that as well. For example if `a = Absent` `WHERE a = {a}` will remove everything, whereas `WHERE a = {a} AND b = {b}` will result in `WHERE b = {b}`.

Do you support templating a sql tstring into an sql tstring for composition?

Yep

Quart, the ASGI version of Flask, also has background tasks, https://quart.palletsprojects.com/en/latest/how_to_guides/ba..., and there is an extension Quart-Tasks, https://github.com/pgjones/quart-tasks, to run them on a schedule. Via

    @tasks.cron("*/5 * * * *")  # every 5 minutes
    async def infrequent_task():
        ...
In addition Hypercorn, https://github.com/pgjones/hypercorn, (a ASGI and WSGI) also does not use gunicorn, having migrated many years ago.

I've three things :),

1. Quart, https://quart.palletsprojects.com, an ASGI (async/await) re-implementation of the Python web MicroFramework Flask. It is now maintained alongside, by the same people, as Flask.

2. Hypercorn, https://hypercorn.readthedocs.io, an ASGI/WSGI server that supports HTTP/1, HTTP/2, and HTTP/3.

3. My book "A Blueprint for Production-Ready Web Applications", which uses both of the above and shows a beginner how to build a full stack app (React frontend) running on AWS. See https://pgjones.dev/tozo/ for details, code, and link to the example app.

Hi Hacker News,

I’ve reached an age now where I need to start thinking about my retirement, in addition to buying a house, saving for a wedding, starting a family, affording to pay for childcare, amongst other things. Frustratingly, it is really hard to know if I’m saving enough, or even how much I should be aiming to save. The best tools to solve my problem model cash flows and are only available through expensive financial advisors. I’ve built Moneyed to solve my own, and many other people’s, problem.

Moneyed, at the core, takes into account personalised financial goals and models cash flows i.e. the growth of assets, savings rates, and spending. Difficulties arise in the details, especially taking into account tax rules, and building a plan that is fully optimised (i.e. one where you minimise the amount you save whilst still being tax efficient and meeting your goals).

Moneyed also utilises Open Banking to give a full financial overview (UK current accounts, credit cards, savings, investments, pensions), to understand current spending, and to make it easy to know if you’re on track.

The backend of the app is built in Quart, an async version of Flask (Python), and utilises React for the frontend. The site also uses Quart for the backend but uses Svelte for the frontend. I’m the author of Quart, so it is an obvious choice for me. As for the frontend, React works really well for the app given the complexity, but I find it too heavy for the site. Fortunately Svelte exists, which I think is perfect for the site.

To build an optimised financial plan, we’re implementing SciPy’s minimize function as it enables us to model both linear and non-linear constraints and is relatively quick to solve (provided the initial first guess is good). We’re planning on leveraging more data science techniques: building a recommender engine to help people decide where to save/invest and cohort analysis to give for social validation and insights.

As for our go-to-market, we’re targeting young professionals working in tech as part of their employer’s benefits and wellbeing strategy as this enables us to create a “trigger” to get people thinking about their financial future.

Octopus Wealth | Full-time in London, UK | ONSITE | https://octopuswealth.com/

We are a wealth management company, here to blow away the cobwebs and breathe new life into personal finance. We believe that getting help should be a positive and uplifting experience: an aspiration, not an anxiety.

We’re developing technology that’ll create a new type of user experience for clients of financial advisers. It’ll also be the key to lowering our costs, helping us bring the benefits of tailored financial advice to more and more people.

Our tech stack is based on Python and Typescript utilizing the Quart and React frameworks respectively. We practice continuous deployment via docker containers to a k8s environment.

Current positions,

- Software engineer, 40 - 70k pa | https://medium.com/octopus-wealth/software-engineer-2be03a48...

- Senior software engineer, 70 - 100k pa | https://medium.com/octopus-wealth/senior-software-engineer-c...

- Design lead, 50 - 70k pa | https://medium.com/octopus-wealth/design-lead-4ef23c5ea445

We offer a comprehensive benefits package, including generous holiday allowance, private healthcare and a host of workplace rewards.