Tag: software

  • Recommended config_dict for pydantic.BaseModel

    It’s difficult to understand why the below is not the default of the pydantic.BaseModel since they look so basic, but anyhow, these are ones I found and keep using. extra=”forbid” prevents following from passing. protected_namespace=(“protected_”, ) makes it possible to use field name that starts with model_. Without it, model_name field causes a trouble.

  • Finding all subclasses dynamically in python

    Python provide __subclass__ to find all subclasses but it doesn’t find a class if it’s not imported yet. One solution is dynamically import subclass. Assuming that ‘impl’ subdirectory contains subclasses, this is how one can do that. It’s dump of my current code, but you’ll get the idea.

  • plotly and drawing multiple lines in a single figure

    I started using plotly. It renders a nice looking chart by default and interactive. With some efforts, one can return json in the server to render it via js. Another benefit is that charts can be merged. It’s very useful in rendering two different lines, e.g., trainig data + test data in a single chart.…

  • twelvedata python api

    While I was looking for python api for crypto, I found twelvedata. It’s cheap and seems to be comprehensive. But I don’t like their python api, e.g., using pandas than polars, siliently setting number of rows to fetch even when start date is set. So I stopped using their api and wrote a small code…

  • Sort values in each row of polars df

    If your data size isn’t too big, here’s an easy solution. Let’s say you have this data: Use this function to sort values across chosen columns but within each row. As an example, if we sort across [“A”, “C”]:

  • How to suppress “Using categorical units to plot a list of strings that are all parsable as floats or dates.”

    If log level is set to INFO, “Using categorical units to plot a list of strings that are all parsable as floats or dates. If these strings should be plotted as numbers, cast to the appropriate data type before plotting.” may be observed when it’s not really relevant. Here’s how to suppress it.

  • 웹사이트 성능 최적화

    소프트웨어 품질의 끝은 결국 측정과 최적화라고 생각하고, 측정이 모든 접근의 시작이자 끝이라고 생각한다. 측정은 목표를 설정할 수 있게 하고, 그 과정에서 목표 자체에 의미가 있는지 따져보게 한다. 하지만 기술적 지식으로 무장한 엔지니어들은 측정을 먼저 시작하기보다는 해결 방법과 수단을 먼저 떠올리게 되고 그것부터 적용 해 놓고 보려고 한다. 대부분의 경우에 적용되는 훌륭한 룰들은 있어서 그게 항상…

  • Modern linux cli tools

    I personally use bat, fd, exa, rg, jq, fzf, sd. https://github.com/ibraheemdev/modern-unix?tab=readme-ov-file Not mentioned in the above but z is also an awesome tool.

  • OpenAI batch API python example

    OpenAI announced batch api which “returns completions within 24 hours for a 50% discount.” To test it, I wrote a trivial python example of the API. I didn’t test the response retrieval yet since my run will take 24h, but I expect it works fine, hopefully. Use jupyter notebook to persist the print output!

  • Mac shortcuts to move window to left/right side of screen

    Mac has Application shortcut and it can be used to select a menu using a keyboard. We can use that to move the windows. Here’s how I set it. It’s not super convenient as one needs to enter exact text like “Move Window to…”. Also, the application itself should have that exact menu name for…