Hacker Newsnew | past | comments | ask | show | jobs | submit | shawnwall's commentslogin

lots of canonical/ubuntu down https://status.canonical.com/


Indeed. I only noticed when trying to pull up Ubuntu docs and getting a 503


been in the python game a long time and i've seen so many tools in this space come and go over the years. i still rely on good ol pip and have had no issues. that said, we utilize mypy and ruff, and have moved to pyproject etc to remotely keep up with the times.


uv solved it, it will be the only tool people use in 2 more years. if you’re a python shop / expert then you can do pip etc but uv turned incidental python + deps from a huge PITA for the rest of us, to It Just Works simplicity on the same level or better than Golang.


Then can they please figure out some way of invoking it that doesnt require prefixing everything with 'uv'


You can source the virtualenv like normal.


For any command, you can create an 'alias' in your shell config. That way you can get rid of the prefix.


Solved with direnv. Also - in my .bashrc in all of my (many) clients:

  $ type uvi uvl uvv
  uvi is a function
  uvi ()
  {
      uv pip install $@
  }
  uvl is a function
  uvl ()
  {
      uv pip list
  }
  uvv is a function
  uvv ()
  {
      uv venv;
      cat > .envrc <<EOF
  source .venv/bin/activate
  EOF

      direnv allow
  }


That would defeat the purpose of creating and expanding their brand.



alias in ~/.zshrc?


uv run bash/zsh/your shell of choice


I don't want software on my computer, that just downloads and installs random stuff. This is the job of the OS in particular the package manager.


You're welcome to live in the 90s dark ages, I feel this attitude and the shape of the old linux distros like Debian that laboriously re-package years-old software have been one of the biggest failures of open source and squandered untold hours of human effort. It's a model that works okay for generic infrastructure but requires far too much labor and moves far too slowly with quite a poor experience for end users and developers. Why else would all modern software development (going back to perl's cpan package manager in 1995) route around it?


Do you not use non-OS package managers?

If not, do you develop software with source dependencies (go, java, node, rust, python)? If so, how do you handle acquiring those dependencies—by hand or using a tool?


> Do you not use non-OS package managers?

Mostly no, sometimes I give up and still use pip as a separate user.

> If not, do you develop software with source dependencies (go, java, node, rust, python)? If so, how do you handle acquiring those dependencies—by hand or using a tool

I haven't felt the need to use Go, the only Java software I use is in the OS repo. I don't want to use JS software for other reasons. This is one of the reasons why I don't like Rust rewrites. Python dependencies are very often in the OS repo. If there is anything else, I compile it from source and I curse when software doesn't use or adheres to the standard of the GNU build system.


I hope you understand you are part of a very, very small minority.


Thanks for explaining your workflow. It seems predictable, but like it really locks you into one of the few (albeit popular) programming languages that has many/most of its development libraries repackaged by your OS. There are plenty of very popular languages that don't offer that at all.

Go and Rust, specifically, seem a bit odd to be allergic to. Their "package managers" are largely downloading sources into your code repository, not downloading/installing truly arbitrary stuff. How is that different from your (presumably "wget the file into my repo or include path") workflow for depending on a header-only C library from the internet which your OS doesn't repackage?

I understand if your resistance to those platforms is because of how much source code things download, but that still seems qualitatively different to me from "npm install can do god-knows-what to my workstation" or "pip install can install packages that shadow system-wide trusted ones".


Personally I run "apt install whateverineed"


I very much appreciate the sentiment - and agree that random crap (particularly some of the insane dependency chains that you get from NPM, but also Rust) in which you go to install a simple (at least you believe) package - and the Rust/NPM manager downloads several hundred dependencies.

But the problem with only using the OS package manager is that you then lock yourself out of the entire ecosystem of node, python, rust packages that have never been migrated to whatever operating system you are using - which might be very significant.

How do you feel about Nix? It feels like this is a nice half-way measure between reliable/reproducible builds, but without all of the Free For all where you are downloading who-knows-what-from-where onto your OS?


In general I agree with you. But not for software dev packages.

The package manager I use, apt on Debian, does not package many Python development repos. They've got the big ones, e.g. requests, but not e.g. uuid6. And I wouldn't want it to - I like the limited Debian dev effort to be put towards the user experience and let the Python dev devs worry about packaging Python dev dependencies.


What’s the point of constraining oneself to what is in the OS package manager? I like to keep my dependencies up to date. The versions in the OS package manager are much older.

And let’s say you constrain yourself to your OS package manager. What about the people on different distros? Their package managers are unlikely to have the exact same versions of your deps that your OS has.


> What’s the point of constraining oneself to what is in the OS package manager? I like to keep my dependencies up to date. The versions in the OS package manager are much older.

I favor stability and the stripping of unwanted features (e.g. telemetry) by my OS vendor over cutting edge software. If I really need that I install it into /usr/local, that it what this is for after all.

> And let’s say you constrain yourself to your OS package manager. What about the people on different distros? Their package managers are unlikely to have the exact same versions of your deps that your OS has.

This is a reason to select the OS. Software shouldn't require exact versions, but should stick to stable interfaces.


Don't worry, gramps, pip won't trigger your tinfoil hat.


Then don't use it?


Do you use pip?


Geospatial tends to be the Achilles heel for python projects for me. Fiona is a wiley beast of a package, and GDAL too. Conda helped some but was always so slow. Pip almost uniformly fails in this area for me.


Yup, the fact UV just installed geopandas out of the box with no issues blew my mind.


Yeah I gotta agree here, I'm not sure I've seen someone so opinionated with python. I tend to try to use things built into python or official recs until I hit an actual problem that needs to be solved.


This is why I'm not posting this article to my team's slack. There's some good stuff in the article, but my team also has some well-meaning over-optimizers that will see this and start throwing in orjson even though json (de)serialization is an insignificant impact to our execution time, or loguru even though our code base has stupidly simple logging requirements, and they'll do it because they'll see this article stating authoritatively that those are the correct choices without considering the value of simplicity, the longevity of standard libraries, or whether the problems those libraries are trying to solve actually apply to us. And they'll do that because the author of this article failed to address or even acknowledge ANY of those concerns.


> using loguru when you could be using structlog

Oof. Yikes. Outdated much? I kid, but it's way too easy to be dogmatic about stuff like libs.


Google is making a huge amount of progress in UI and UX; the company has historically been rather mediocre in terms of it's UI and UX, while Apple was always the star. Over the past year or so the roles have reversed, and Google continues making strides towards unifying their applications in a single user experience and ui paradigm that allows for simpler app use, particularly for new users.

It's easy to get upset when things change, but keep in mind that change can be positive and/or negative.


> allows for simpler app use, particularly for new users

Are you kidding me? So called "flat design", with nondescript icons indistinguishable from the surrounding text, is the worst thing ever for new users. How am I supposed to know that I can click (er, I mean, touch) something?


I'm not saying every choice they made is perfect. One of my qualms is the lack of backgrounds for button selection in areas with 'ok' and 'cancel' - which is one of the most important areas to give the user clear direction.


I've had Lollipop for over a week and I generally don't find lack of affordance in the UI. It's very clear what is clickable and what isn't. (there are a couple of very minor exceptions I can think of)


IIRC, there's actually a distinction between clickable stuff and text in material design.


The new gmail interface combined with the fact it logs me in to youtube to watch a video, made me install a cli mail client. Haven't looked back.


The web interface convinently logged you in and you stop using it because of that?


Logging into youtube will, by default unless you know about it and turn it off, associate every video you view with your G+ profile for your gmail account, so every person you correspond with can look up your video history.


The other really frustrating thing is when you log out of Gmail, you are not actually logged out. You will be presented by a pseudo-looking login screen, which is really just an authentication screen to get back to Gmail.

What really happens is they keep you kind of logged in to collect as much data on your searches, videos, etc. The way to actually log out is:

- Click logout in Gmail

- Click "Sign in with a different account" (!)

- Click "Remove"

- Click the X next to your name.

- Click Done

It feels like they are trying to trick you into staying logged in by making the logout process extremely obscure and difficult, and I really hate it when I'm being blatantly tricked like that. With existence of evercookies (http://samy.pl/evercookie/) I am somewhat skeptical that even that obscure logout process actually logged me out.

This is pretty much the strongest reason why I don't use the GMail UI anymore (there are others, but this alone would have made me stop).


One could use chrome's incognito mode to get around such irritations if one were so inclined.


When I have to use Privacy Mode, I do. But the sheer fact I have to is mildly infuriating.


Sorry, where do I go to see this because it sounds like you're talking absolute nonsense.


It appears to have changed in the last few months, and it didn't show full history, so I'll take it back slightly, but you can still see other Youtube users favourites/subscribed: https://www.youtube.com/user/whoever

Some people have a link from their G+ to their youtube, but it seems not to be there for everyone any more.


I had no idea it had gotten that bad! Seems my overreaction was justified.


Yes, you read correctly. One man's convenience is overstepping the mark pushing G+ for another.


In some apps, yes, but in many others they are just as atrocious as they've always been—just adhering to material design a bit more. For example, Chrome on iOS has a pretty wonderful UX but Maps is a shitshow; it takes me several frustrated clicks to do what I want. You can never tell what a UI element does simply by looking at the screen.


Some big companies do, just not the ones you'd probably care to work at. If they make this choice they simply lose out on a certain set of individuals. Their loss, not yours.


Safari on OSX has always had the ability for a user to set their default browser preference (to chrome for example). I wonder if iOS will ever go this route.

I find it odd that Microsoft went to court for doing the same thing in Windows but it's okay for Apple to do it.


They should do it to make users happy. I'd like to be able to more easily use apps like Sparrow and Chrome, but it's tough when they can't be set as the default.


I just wanted to throw this out there:

you should first read the objective-c primer.

https://developer.apple.com/library/mac/#referencelibrary/Ge...

You mentioned the apple docs feel complex to you but I'd honestly recommend truly taking your time and working through them as they really are the best.


As a long time Obj-C/iOS dev, web service interaction frameworks and/or best practices have been lacking for some time now. While RestKit works, it's learning curve is a tad steep and the sheer size of it can be a tad frightening in terms of 3rd party component reliance. If AFIncrementalStore is as great to work with as AFNetworking itself devs may have found themselves a new standard.


is there any good central repository for these kinds of frameworks / best practices?


All of the best Objective-C libraries can be found on CocoaPods (https://github.com/CocoaPods/specs/)


If Microsoft could actually release a desktop operating system that is properly designed visually and in terms of user experience, people could actually admire their PC's like they do in all of their stupid commercials. Their market share is so massive that a success in the desktop space could then drive growth in mobile as they actually have build a good UX there.


They have. It's called Windows and it does have a properly designed interface which is very robust and flexible. People not only admire it, they adore it so much that they don't want Microsoft to change it in any way.

I suppose that you think OS X is better? Well, that's like, your opinion man. I disagree and so do millions upon millions of other people.


OP was talking about user experience, not user interface. I don't know anyone who admires the UX of Windows, but lots that enjoy the UI. Examples of the differences: Windows will still show you focus-stealing dialogs that may result in a total shutdown of the OS if you're busy typing. Windows will still by default reboot if you walk away for 15 minutes and it decides to update. Application installation and uninstallation is still a pain for most users. Multiple monitors are not supported well. There are no virtual desktops.

The user experience on Windows is distinctly subpar to every other operating system I've ever used. I know this is my opinion and I know that there are probably millions who disagree with me. But as I've said, I've not met any yet.


The OP was talking about both. They said "properly designed visually". That's the interface. Then he said "and in terms of user experience, people could actually admire their PC's like they do in all of their stupid commercials".

"I don't know anyone who admires the UX of Windows"

Well, I don't know any users who don't admire it. I know users who have the occasional gripe, but overall most people that I know are very happy with Windows and simply don't want to use anything else.

"The user experience on Windows is distinctly subpar to every other operating system I've ever used."

OK. The user experience on Windows is distinctly exceptional to every other operating system I've ever used.

I've used them all too and while Windows may not have every single feature that you personally want, the UX is leaps and bounds ahead for the most important features. Basically, it just works. I cannot say the same for OS X or any Linux desktop where you have to fight with them to get them to do what you want.

Windows has such a great UX, such that if you don't like something, you can change or add it. You can't say the same for OS X. Apple doesn't even allow developers access to the APIs that they use...for instance, for their Dock. So, if you want to replace the Dock with something better...you can't. If I want to replace Windows' taskbar with a Dock...I can do that.

That's the experience that I want. I don't want to fight with the company or the group, to get what I want. You want virtual desktops in Windows? Add them. You want "better" multi-monitor support? Add it. Being the world's most popular desktop operating system has the advantage that many people have developed solutions for your minor complaints.

"Windows will still by default reboot..."

Most people want updates to be applied when their not in front of the computer. If you're in the minority, change the setting.


>Multiple monitors are not supported well

What do you mean by that?


Let's say I have 20-30 windows open on a laptop connected to an external monitor (I do, right now). Windows 7 has one taskbar, and so it becomes extremely difficult/near impossible to quickly determine which window is on which screen. This could be improved by adding a second taskbar (I think this is coming in Windows 8?) but I think more is needed.

Additionally: some application titlebars can be dragged so the window appears on a different screen, but some cannot. Excel, when maximized, cannot be dragged to another screen.

Back to taskbar issues: My biggest complain pre-Windows 7 was that you could not reorder items. I thought they fixed it, but they actually made it a lot more annoying with W7. I think Windows assumes that each window of an application is related to the other windows (never the case with my workflow) and so you cannot separate them by dragging. Say I have 5 Firefox windows with a few tabs each, where each window's tabs represent a collection of related topics. Now say I have some Word and Excel documents also open that relate to the browser windows. I'd like to arrange Topic 1 from Firefox, Word and Excel on one monitor with their taskbar items together, Topic 2 on the second monitor with their items together, etc. It's very unpleasant and difficult to manage windows on Windows.


Here's the thing...just because you aren't getting something exactly the way you want it...does not mean that the UX is somehow awful for every person using it.

Furthermore, Windows has left the hooks available for people so that they can change something if they don't like it. That's the best UX present any company can give you.

There are plenty of apps out there to modify Windows. As a matter of fact, there's very little that can't be modified. Why don't you just look around for some program to do what you want?


> does not mean that the UX is somehow awful for every person using it.

Oh I know - I was merely giving my own opinion.

> Why don't you just look around for some program to do what you want?

I'm not allowed to. This is a business computer, not a personal machine. Not everyone has the freedom to install third-party software to fix up bad UX in the OS they are using.


>This could be improved by adding a second taskbar (I think this is coming in Windows 8?) but I think more is needed.

Yes, this is coming in Windows 8. http://blogs.msdn.com/b/b8/archive/2012/05/21/enhancing-wind...

>My biggest complain pre-Windows 7 was that you could not reorder items. I thought they fixed it, but they actually made it a lot more annoying with W7. I think Windows assumes that each window of an application is related to the other windows (never the case with my workflow) and so you cannot separate them by dragging. Say I have 5 Firefox windows with a few tabs each, where each window's tabs represent a collection of related topics. Now say I have some Word and Excel documents also open that relate to the browser windows.

You can ungroup windows in the taskbar with 7 Taskbar Tweaker http://rammichael.com/?proj=29


> You can ungroup windows in the taskbar with 7 Taskbar Tweaker http://rammichael.com/?proj=29

Thanks but it's useless for me as I'm on a business machine with restrictions on allowable software installation.


There _is_ usefulness to it if people would stop using it as a marketing/advertising tool and try to drive real value (which people need to be doing in general with mobile). We need to find uses within the enterprise or industrial space in combination with OpenCV.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: