Searching txt.sour.is

Twts matching #Python:
Sort by: Newest, Oldest, Most Relevant

PEP 699: Remove private dict version field added in PEP 509
PEP 509 introduced a private ma_version_tag field for dictionaries to allow optimizations in CPython and extension libraries. This PEP proposes to rescind PEP 509 and declare the field an implementation detail, as it has already been superseded by alternatives. This will further allow the field to be reused for future optimization. ⌘ Read more

⤋ Read More

How to Develop and Deploy a Customer Churn Prediction Model Using Python, Streamlit, and Docker
Customer churn is a million-dollar problem for businesses today. The SaaS market is becoming increasingly saturated, and customers can choose from plenty of providers. Retention and nurturing are challenging. Online businesses view customers as churn when they stop purchasing goods and services. Customer churn can depend on industry-specific factors, y … ⌘ Read more

⤋ Read More
In-reply-to » I did a take home software engineering test for a company recently, unfortunately I was really sick (have finally recovered) at the time 😢 I was also at the same time interviewing for an SRE position (as well as Software Engineering).

@prologic@twtxt.net Error handling especially in Go is very tricky I think. Even though the idea is simple, it’s fairly hard to actually implement and use in a meaningful way in my opinion. All this error wrapping or the lack of it and checking whether some specific error occurred is a mess. errors.As(…) just doesn’t feel natural. errors.Is(…) only just. I mainly avoided it. Yesterday evening I actually researched a bit about that and found this article on errors with Go 1.13. It shed a little bit of light, but I still have a long way to go, I reckon.

We tried several things but haven’t found the holy grail. Currently, we have a mix of different styles, but nothing feels really right. And having plenty of different approaches also doesn’t help, that’s right. I agree, error messages often end up getting wrapped way too much with useless information. We haven’t found a solution yet. We just noticed that it kind of depends on the exact circumstances, sometimes the caller should add more information, sometimes it’s better if the callee already includes what it was supposed to do.

To experiment and get a feel for yesterday’s research results I tried myself on the combined log parser and how to signal three different errors. I’m not happy with it. Any feedback is highly appreciated. The idea is to let the caller check (not implemented yet) whether a specific error occurred. That means I have to define some dedicated errors upfront (ErrInvalidFormat, ErrInvalidStatusCode, ErrInvalidSentBytes) that can be used in the err == ErrInvalidFormat or probably more correct errors.Is(err, ErrInvalidFormat) check at the caller.

All three errors define separate error categories and are created using errors.New(…). But for the invalid status code and invalid sent bytes cases I want to include more detail, the actual invalid number that is. Since these errors are already predefined, I cannot add this dynamic information to them. So I would need to wrap them à la fmt.Errorf("invalid sent bytes '%s': %w", sentBytes, ErrInvalidSentBytes"). Yet, the ErrInvalidSentBytes is wrapped and can be asserted later on using errors.Is(err, ErrInvalidSentBytes), but the big problem is that the message is repeated. I don’t want that!

Having a Python and Java background, exception hierarchies are a well understood concept I’m trying to use here. While typing this long message it occurs to me that this is probably the issue here. Anyways, I thought, I just create a ParseError type, that can hold a custom message and some causing error (one of the three ErrInvalid* above). The custom message is then returned at Error() and the wrapped cause will be matched in Is(…). I then just return a ParseError{fmt.Sprintf("invalid sent bytes '%s'", sentBytes), ErrInvalidSentBytes}, but that looks super weird.

I probably need to scrap the “parent error” ParseError and make all three “suberrors” three dedicated error types implementing Error() string methods where I create a useful error messages. Then the caller probably could just errors.Is(err, InvalidSentBytesError{}). But creating an instance of the InvalidSentBytesError type only to check for such an error category just does feel wrong to me. However, it might be the way to do this. I don’t know. To be tried. Opinions, anyone? Implementing a whole new type is some effort, that I want to avoid.

Alternatively just one ParseError containing an error kind enumeration for InvalidFormat and friends could be used. Also seen that pattern before. But that would then require the much more verbose var parseError ParseError; if errors.As(err, &parseError) && parseError.Kind == InvalidSentBytes { … } or something like that. Far from elegant in my eyes.

⤋ Read More

the-spatializer/instagram-follower-scraper

Image

Scrap Instagram Follower, detect accounts you follow, accounts that follow you, accounts that follow you but you don’t follow back, accounts you follow but don’t follow you back using python

Language: Python

Star: 1

Watch: 1 ⌘ Read more

⤋ Read More

PEP 691: JSON-based Simple API for Python Package Indexes
The “Simple Repository API” that was defined in PEP 503 (and was in use much longer than that) has served us reasonably well for a very long time. However, the reliance on using HTML as the data exchange mechanism has several shortcomings. ⌘ Read more

⤋ Read More

PEP 690: Lazy Imports
This PEP proposes a feature to transparently defer the execution of imported modules until the moment when an imported object is used. Since Python programs commonly import many more modules than a single invocation of the program is likely to use in practice, lazy imports can greatly reduce the overall number of modules loaded, improving startup time and memory usage. Lazy imports also mostly eliminate the risk of import cycles. ⌘ Read more

⤋ Read More

PEP 685: Comparison of extra names for optional distribution dependencies
This PEP specifies how to normalize distribution _extra_
names when performing comparisons.
This prevents tools from either failing to find an extra name or
accidentally matching against an unexpected name. ⌘ Read more

⤋ Read More

janetanne/outfitless

Image

Web application for organizing your closet and keeping track of your wardrobe, as well as picking your outfit for the day. Uses Google Oauth to register for an account/sign in and Clarifai API to process images.

Language: Python

Star: 3

Watch: 3 ⌘ Read more

⤋ Read More

PEP 683: Immortal Objects, Using a Fixed Refcount
Under this proposal, any object may be marked as immortal.
“Immortal” means the object will never be cleaned up (at least until
runtime finalization). Specifically, the refcount for an immortal
object is set to a sentinel value, and that refcount is never changed
by Py_INCREF(), Py_DECREF(), or Py_SET_REFCNT().
For immortal containers, the PyGC_Head is never
changed by the garbage collector. ⌘ Read more

⤋ Read More

PEP 682: Format Specifier for Signed Zero
Though float and Decimal types can represent signed zero, in many
fields of mathematics negative zero is surprising or unwanted – especially
in the context of displaying an (often rounded) numerical result. This PEP
proposes an extension to the string format specification allowing negative
zero to be normalized to positive zero. ⌘ Read more

⤋ Read More

oliviersm199/Tweet-Generator

Image

The Tweet Generator uses a Markov chain to generate random tweet based off of past tweets. It uses Python and the Twitter API to obtain the last 200 tweets from a particular user, organizes them into a JSON tree structure and then executes a random walk on that tree structure. This results in sometimes hilarious sometimes nonsense tweets that mimic the Twitter user’s past tweets.

Language: Py … ⌘ Read more

⤋ Read More

I feel like it took me a bit longer to fully understand how to work in Smalltalk than it did most languages. The IDE is different than anything I’ve used before, and probably anything you’ve seen as well. You’re not going to be opening myscript.st in your favorite text editor, and then run it from the command line as you would a Python program. It takes a little mental adjustment to start with.

That’s not the warning, howe … ⌘ Read more

⤋ Read More

PEP 679: Allow parentheses in assert statements
This pep proposes to allow parentheses surrounding the two-subject form of
assert statements. This will cause the interpreter to reinterpret what before
would have been an assert with a two-element tuple that will always be True
(assert (expression, message)) to an assert statement with a subject and a
failure message, equivalent to the statement with the parentheses removed
(assert expression, message). ⌘ Read more

⤋ Read More

PEP 678: Enriching Exceptions with Notes
Exception objects are typically initialized with a message that describes the
error which has occurred. Because further information may be available when the
exception is caught and re-raised, this PEP proposes to add a .__note__
attribute and update the builtin traceback formatting code to include it in
the formatted traceback following the exception string. ⌘ Read more

⤋ Read More

蚂蚁 - 可信原生技术部 - 专用编程语言设计研发 (杭州 P7-8)

工作内容
  1. 从事云原生配置策略语言的设计研发工作,服务云原生基础设施管理场景
  2. 从事区块链智能合约专用编程语言的设计及研发工作,服务区块链链智能合约场景
  3. 深度参与开源社区项目
招聘要求
  1. 熟练掌握 rust、golang、c/c++、java、python 中的一种或多种
  2. 熟悉现代编程语言设计理念、技术及研发体系,熟悉编译技术�� … ⌘ Read more

⤋ Read More

PEP 677: Callable Type Syntax
This PEP introduces a concise and friendly syntax for callable types,
supporting the same functionality as typing.Callable but with an
arrow syntax inspired by the syntax for typed function
signatures. This allows types like Callable[[int, str], bool] to
be written (int, str) -> bool. ⌘ Read more

⤋ Read More
In-reply-to » Use C do crime! https://cdn.masto.host/pdxsocial/media_attachments/files/107/294/565/215/390/680/original/1d29c85c0aa4c9a5.png

JavaScript : web apps

wut?! 😳 seriously?! 🤦‍♂️

Python : small tools

Okay 👌

Go: micro services

Umm bad generalization 🤣 – Example yarnd that powers most of Yarn.social 😂

Java: enterprise software

Yes! Oh gawd yes! 🤣 And Java™ needs to die a swift death!

C: crimes

Hmmm? 🤔 I feel this one is going to have some backslash and/or go the way of “Hacker” being misconstrued to mean entirely different/incorrect things as is what’s happening in the media (for various definitions of “media”).

⤋ Read More

PEP 671: Syntax for late-bound function argument defaults
Function parameters can have default values which are calculated during
function definition and saved. This proposal introduces a new form of
argument default, defined by an expression to be evaluated at function
call time. ⌘ Read more

⤋ Read More

PEP 8103: 2022 Term steering council election
This document describes the schedule and other details of the December
2021 election for the Python steering council, as specified in
PEP 13. This is the steering council election for the 2022 term
(i.e. Python 3.11). ⌘ Read more

⤋ Read More