YouTube already supports that natively these days, although it's kind of hidden (and knowing Google, it might very well randomly disappear one day). Open the description of the video, scroll down and click "show transcript".
Although the end goal of a PhD is a specialized thesis, the first couple of years generally involves courses with a wide coverage of analysis and algebra at the graduate level.
Given her achievements, I'd be very surprised if Cairo hasn't already covered the material in an undergrad degree
The set of all real->real functions is still a vector space.
This vector space also has a basis (even if it is not as useful): there is a (uncountably infinite) subset of real->real functions such that every function can be expressed as a linear combination of a finite number of these basis functions, in exactly one way.
There isn't a clean way to write down this basis, though, as you need to use Zorn's lemma or equivalent to construct it.
If you restrict yourself to Lebesque-integrable functions, can’t you take the complex Fourier transform of the function and call the terms of the Fourier series a basis, with the coefficients being the components of the vector of the function? This is a bit above my current mathematical paygrade, so forgive me if I’m not expressing the idea accurately but I’m learning a lot both from the article and the ensuing discussion - hopefully you understand what I’m getting at.
I think what I may be asking is “Does the complex Fourier transform make a Hilbert space?” but I might be wrong both about that and about that being the right question.
Another example is the eigenvectors of linear operators like the Laplacian. Recall how, in finite dimension, the eigenvectors of a full rank operator (matrix) form an orthonormal basis of the vector space. There is a similar notion in infinite dimension. I can't find an English page that covers this very well, but there's a couple of paragraphs in the Spectral Theorem page (https://en.wikipedia.org/wiki/Spectral_theorem#Unbounded_sel... ). The article linked here also touches on this.
Regarding your last sentence, one thing to note is that having a basis is not what makes you a Hilbert space, but rather having an inner product! In fact, to get the Fourier coefficients, you need to use that inner product.
That's awesome info thank you so much. Reading it, a Hilbert basis is exactly what I am talking about. It's always exciting when my intuition guides me on the right path. I'll check out the Spectral theorem page also.
for some coefficients a_k and b_k as long as f is sufficiently nice (I don't remember the exact condition, sorry).
This is very useful, but the functions sin(x), sin(2x), ... , cos(x), cos(2x), ... don't constitute a basis in the formal sense I mentioned above as you need an infinite sum to represent most functions. It is still often called a basis though.
Thanks for that. That’s the trigonometric Fourier series. A complex Fourier series (which is what I mentioned) is equivalent and works similarly except that the terms are all uniform, so
f(x) = sum n=-infty to +infty C_n e^{i n x}
You can derive one from the other by using the identities
sin x = (e^(ix) - e^(-ix))/2i
cos x = (e^(ix) + e^(-ix))/2
I specifically mentioned the complex series because I didn’t like the fact that the alternating terms use a different trig function and it seemed weird to me to have every second dimension in a space be different in that way but they are equivalent.
The convergence criteria for Fourier series vary depending on how strongly you need convergence but I think basically if a function is differentiable on the interval you care about then the Fourier series provably converges on that interval and otherwise if it has jump discontinuities and that sort of thing, then depending on whether it is square-integrable or a bunch of other properties) you can prove weaker forms of convergence (absolute, pointwise etc).
To address your comment I don’t see why an infinite sum prevents something being a basis. In fact I would specifically say that can’t be true because then there would never be a basis for any infinite-dimensional space- any time you want to take an inner product in such a space you need an infinite sum, and you need such an inner product to construct the basis. A sibling comment pointed me in the direction of a Hilbert basis, which seems to be what I was thinking of.
If you're familiar with Zorn's Lemma, the construction is just to order bases by inclusion and to consider chains created by noting that there must be an independent dimension and adding it inductively. You can upper bound each of these chains by unioning the members of the chain (which preserves linear independence). By Zorn's Lemma that means there is a maximal linearly independent system and if an element existed outside of that system's span it would contradict that maximality.
He doesn't need to talk about it (though you might like to look up the notorious Hilbert's Basis Theorem); it happens to be the case that any vector space has a basis, but even if you don't know that, a vector space is still a vector space and its elements are still vectors.
> This might be okay for consumer apps, but maddeningly, the same doctrine gets applied to enterprise applications as well. I've literally heard non-techie employees of a Fortune 100 company ask for their legacy green screen terminals back because the new, flashy SPA was slowing them down.
Applying general design principles without taking actual use cases into account is the worst.
A common one is putting heaps of whitespace around each cells in a table. Visually appealing, sure. But unusable if I need to look at more than 8 rows at the same time.
Agreed. Most user experience work today are done by people who ironically have little experience as a user. E.g. they will design a table in Figma, make it look nice. They may even go so far as understand that this table will typically contain 2500 rows and introduce pagination and filtering by most commonly used attributes. But if they load some sample data into a functional mock system and simulate a typical user's day (e.g. they have to wade through this table multiple times per hour, while on the phone with a customer), they will immediately realize the feel good factor of white spaces, pastel colours and high contrast icons are very low priority.
You forgot one awesome feature of those SPA: once your user finally manage to get some muscle memory in, you can push a new UI redesign so get them back to square one. Because you have to give work to do to your frontend people.
> Most user experience work today are done by people who ironically have little experience as a user
So many upvotes for this. While the provided thing might technically work, if it is clunky for the users, the users will not like it. I understand those making the thing will probably never use the thing. The problem comes when those making do not listen to those using. There have been many times where I've made the thing, but then when I went to use the thing I wanted nasty things to happen to the person that made it. I've been in some very contentious UAT rounds where I was the user and the devs refused to listen to valid complaints.
The funny thing is that a lot of those problems are known during development time, by the people who have to actually "use" the product at all times during development, a.k.a. the developers.
Not sure I follow. The situations I've built appear fine during testing during development. I go to the UI, click the buttons, get the correct result. Test complete.
The type of thing I'm thinking about is when the user does that many many times in a day, but to get to the button that is on one part of the screen which is very inefficient compared to if the button was moved closer to something else so that the UX is improved. Sure, what the dev did "worked", but it might not feel clunky when you test it once or twice. That's the difference that drives most UX<=>Dev disagreements.
Dev: but it works
User: yes, but it sux using it. it can be better for us if change X, Y, Z
Dev: but it works. ticket closed
It doesn't matter if it works while everyone hates using it. I don't care what the devs think. If the user's request is reasonable, rational, and will improve the UX, stop fighting it. This situation is precisely my experience that happens when there's no designer.
I'm talking about bad designs. Grandparent mentions Figma, this is who I'm talking about.
Developers have to work on the app the whole day and they know when a design is bad for long term usage. Either by doing manual testing, or even when automating it.
UX people dictating the designs will rely on instinct even when developers complain that a design is inefficient. Or even for visual design things like excessive padding getting in the way of making the apple useable. IME, YMMV.
If you're talking about inexperienced/unemphatic developers being in charge of UX alone: well, yeah, that will happen too.
Reading about whitespace on tables infuriates me so much.
At a previous job we had an actual good designer figure out what users wanted and she found out users wanted denser information. So she designed a more compact table. It was quite smart, used the whole screen, but still looked amazing and didn't feel cramped.
Then my company released it as a library for the whole company to use and the first thing one of the product managers did was requesting margins AND frames around it, plus a lot of whitespace between cells.
Now instead of displaying around 25 items on the screen at a given time, this other system can only display around 10.
The cherry on top: it looks horrible with the frame and with the unbalanced margins.
I feel like this is kind of pedantic - if your definition of the word "political" renders their point moot, then clearly they must be using a different definition.
But I understand what you mean. The problem is that 99% of online discussions about politics are not about how it relates to anything else. They are usually the same 5 conversations rehashed over and over again. And for some reason, they are aggressively derailed in that direction.
reply