I was at the receiving end of this. Not at Amazon but at another similar Silicon Valley tech company. When I was hired I thought it was a great opportunity and moved my family to SV. First day I go in, I realized that just about couple of months before my hire date about half the team was laid off.
A few months in there were lots of red flags —
1. the director who is above my manager used to do code reviews and not my manager. He used to point out minor things (think linting or similar) such but was did not point out any major flaws in the code (I also reviewed others code)
2. Zero transparency- the director used to say he is going to give hints about professional development and used to ask random questions such as if I would be ok to move to another location etc - this was his prompting not mine. Hint based leadership leads to lots of water cooler talk among employees about what is going on.
About 8 months in, my entire team was laid off and my manager already about a month before that. It turns out I was only hired as a scapegoat to replace the negative morale in the team, people would start to leave because of previous layoffs so the director hired me so that he could tell others - ‘See, we are hiring right now’. In reality he had a 2 year plan of what he wanted to do.
I don’t mind layoffs I can find a job quickly but the biggest problems are for my family who I have had to relocate. After this I sweared I was never to work in SV again.
I now work on wall street, the team I work with is far more transparent and my manager is great.
Can I ask - how did you find working with graphviz. Was this your first time working with it, how long did it take you to figure out how to place things and draw?
I am working with drawing graphs at the moment and evaluating what library to use, its coincidentally nice to see what you built but it also seems like it was thoughtfully laid out (less edge crossings etc). I am trying to do something more dynamic so it may not be as applicable for me.
I am looking at your code as well, thanks for providing that
Not the first time, but possibly the biggest thing I've drawn in it...
There definitely are some weird things when you try to plot complicated things, fighting with weird placement, clusters etc. But not sure if it's me or Graphviz to blame for this. But I don't really know a better tool. If I knew how the diagram would look in hindsight I might have drawn in manually in inkscape or something, but when I started I didn't know what I would end up with, so needed to be an automatic tool :)
Working with graphs, I realized its hard to generate dynamic ones and you inevitably end up with domain specific layouts. I guess thats the nature of graph drawing algorithms, its usually specific to the problem.
Probably too messy to understand what's exactly happening -- but my main takeaway is that if you implement your own DSL (for Graphviz at least), implement in such a way that you can freely mix DSL and raw bits. That way it's very easy to experiment or tweak minor bits without rewriting half of the code.
If you need to be able to diff the code for graphs, graphviz (dot language) is great.
If you need auto-layout, it's hard to do much better than graphviz. The creators of graphviz have some good papers on what it takes to do that right. They'll discourage you from wanting to re-invent that particular wheel, if you read them. Tricky bit here is, depending on your exact graph and constraints, it's not exactly fully solvable in the general case, if you want to have no overlap or no crossing lines under any circumstances whatsoever. Still, you'll struggle to do better, and there aren't actually a ton of implementations out there other than Graphviz that are anywhere near as good (at least, as of a couple years ago).
Templating or building programmatically? Great, it's just text. Generating on demand? Decent, it's fairly fast.
If you need pretty, and I mean really pretty, and especially pretty and interactive... well it's less enjoyable for that, but then nothing that is enjoyable for that purpose is much good at the other points above.
Thanks for that, will try out graphviz. I was doing some custom implementation for minimizing edge crossings and it seems to work fine for me but thats mostly for 2-layered graphs. If I am to expand to multi-layer graphs, its going to be fairly more complicated to figure out how to do that and I dont know if it will work well.
Graphviz seems to be great for getting you a mostly-useful auto layout majority of the time.
I have a requirement to be able to mix fixed-positioned nodes along with dynamically changing nodes, I havent used graphviz to know if it could do that. A library like cytoscape works ok or maybe d3 (I am still evaluating these)
Honestly coming into this, I thought graph drawing would be fairly easy and I could look up online for examples - but it seems to be quite opposite, its really complicated to get graphs that are both dynamically generated with the nodes positioned at the same place in case there are similar nodes
As someone with IBS, totally agree with you. I wish the research would trickle down into actual treatments. I have started following a lot of research about gut etc but very little of it leads to something that can mass consumed.
I spent thousands of dollars on trying out medications, tests, visiting a number of highly trained doctors etc, nothing came up in tests and at the end almost all doctors threw their hands up and categorized my gut issues as IBS which is just a catchAll term for which there is no specific treatment other than trying out a number of things.
For anyone who doesn't feel like viewing a slideshow website, FODMAP stands for "Fermentable Oligosaccharides Disaccharides Monosaccharides And Polyols"
Which is basically Cereals (what make beer) onions, garlic, and beans; Lactose; Fructose; and at least two of the "Sugar Alcohols".
As someone who had their gut biome wrecked by aggressive antibiotics, i was told i will probably have to take probiotics for the rest of my life, but i managed to track down two things that will 100% all the time cause pain - Garlic and Onions. I'm not entirely sure which is worse, but i'd wager garlic. For a long time i assumed it was certain types of oils, too.
Basically if you're adhering to this "Low FODMAP" diet, you're meandering between "slow carb", "atkins", and several other dietary restrictions.
That "fructose" one though, that's a doozy. There are tons of health ramifications to avoiding all of the stuff on the list, so if you suffer from intestinal stuff, it'd probably be best to experiment with each thing on the list (on the site) and see if it causes discomfort, how much, how long, etc.
Low fodmap was of enormous help to me too. For years I thought I had gluten issues, as most bread caused me trouble.
Turns out every wheat product with the exception of sourdough wheat bread is high fodmap! I tried low fodmap and nearly instantly got a lot better. And I can now eat some fodmaps by reintroducing in lower amounts.
Highly recommend anyone with ibs try this. It is complicated but you can get free or cheap apps that let you search ingredients fast to figure out what to remove.
And the great part is the intolerance is quantity based. So, celery in a recipe? No problem. Just don’t eat a massive amount of it. Very much unlike any kind of hard avoidance plan.
This won’t solve all issues but give it an honest shot. Mine has moved from seriously debilitating to minor inconvenience.
Was diagnosed with IBS just after university, then (similarly) spent 10 years suffering and experimenting when I ended up switching to an ultra-low carb diet for unrelated reasons. Within weeks, I started to feel better and for the next 12 years felt great - so much so, that my family (wanting me to enjoy something sweet) started buying me "Keto-friendly" bars with < 2g of net carbs, but also with erythritol. That was a mistake, as within weeks of enjoying the bars, I was back to dealing with IBS. I'm six weeks into trying to undo the 'damage', and starting to feel a bit better, but I'd definitely advise people who have IBS to always be cautious with trigger foods - certainly the ones that personally cause them issues, but also others on the list.
Thanks, yes I have been following fodmap for years now and reduced my gluten intake as well and that has helped a bit. Although its only recommended for 3 to 6 months.
I have also slowly been introducing foods I have been avoiding back and so far I have been able to tolerate them well
(I didn't downvote). For comparison, imagine you signed up with the username "Oracle" and posted "Fellow data storage sufferer here. I understand and share your pain. There isn't any magic pill yet but until someone invents it I can tell you I've found great comfort using the Oracle database" and a link to a "purchase Oracle" page.
You might be a well-meaning person, but you're hard to distinguish from a bot pushing a fad diet with online courses, a for-pay app, a shop, "find a dietician" services, certifications, etc. Preying on offering hope to the sick and desperate is common and people are cynical and wary of it, and even genuine well-meaning people are prone to sharing dubious alternative medicine suggestions which they honestly believe help but aren't proven to do anything more than the placebo effect. If you were a long-standing HN commentor, you'd probably get more benefit of the doubt; signing up as "fodmap" to link to an apparently for-profit fodmap service with an emotional message makes it easy to assume bad faith astroturfing at a glance - focused username, commercial link, fringe/alternative/woo treatment, claims of health cure for incurable condition, SEO style message ("As a fellow sufferer, believe me, I know, I've been there, trust me, just one easy credit card payment").
I agree with your overall message but in this case I would like to point out one thing - a lot of fad diets were first adopted by people and then researched to see if they are helpful where as Fodmap has been specifically researched for the gut and only after it has been shown to be helpful, its now being recommended by doctors.
Obviously you should talk to your doctor before adopting the diet. It may not provide all of the nutrients that your body needs and its normally only recommended for 3 to ~6 months. Its may also not work well for some variants of IBS / IBD / other gut issues and may even be a detriment - so talk to your doctor.
Personally its been helpful for me. A lot of people also may not need to do fodmap and instead just do a elimination diet. For example you may not know it but may be suffering from lactose intolerance or gluten intolerance and so on. Probably easier to try that first as well.
I don't have an "overall message"; they asked why they were being downvoted for sharing a genuine opinion, and I explained how much the comment looks like an advert. I am already convinced that gut microbiome affects people and diet affects people.
I have IBS symptoms basically fully in times of stress, days on end, otherwise things are fairly normal. I wonder if either my understanding of IBS is false, or it's not biome related for me.
I suffer from IBS as well and out of all the things that flares up my IBS, stress is a prominent one. Reading research papers, its been seen that gut biome changes based on stress - look up gut-brain connection, theres been a few books written about it as well.
Its a fairly new thing - from about 15 years back. Nowadays one of the treatments that a gastroenterologist could recommend if they have exhausted everything else is low dose anti-depressant.
Key is to identify what is causing stress and treat that
If you don't mind, what do you produce on your farm and how many do you hire. It seems like you would need a high output yield to generate millions or have a pretty large farm. Also how do you sell your produce/product? Direct to consumers? Through retail?
Also curious to know how you came to doing this. Did you see it as an opportunity or just went into it through family
Not OP, but we have a farm in India. Mostly we let it remain stagnant for a few years, so it's just been giving us coconuts.
Now we are starting an integrated fish farm + jackfruit farm + subsistence farm + livestock (goats only) approach. We have the fish farm because there's a nice irrigation stream that passes right by the side, wholly part of the farm (most farms of a certain land size will have some irrigation arrangement of the sort). The jackfruit is grown to sort of cater to the export demand for jackfruit abroad (especially with the whole "jackfruit as a meat trend"). Jackfruit trees grow thickly, so they provide a nice shade for any agriculture under the canopy at a reduced temperature (for stuff like spinach, tomatoes, pumpkins, etc) but that's mostly subsistence scale unless you go inorganic. Jackfruit leaves are really good as a feed for goats, which are the only animals that eat them and actually love eating them. The goats are sold for mutton to caterers for weddings and other functions.
Government gives electricity on the cheap as long as you show proof of agriculture (you cannot use it for your homes - they connect it separately and check it very often). The only issues have been theft of fish, for which we fit a bunch of security cameras around the place, so we were able to nab a couple of bastards. The main issue has been the semi-manual irrigation system, but I tested a prototype irrigation system using a Raspberry Pi for our small garden here, so I might try something similar for the farm back home.
Thanks for that. Gives a lot more perspective. Is it usually high maintenance to maintain the farm i.e. do you have people taking care of it - how hands on do you have to be for that.
I would expect GP to be a lot more involved and not less as the post title suggests but I was curious.
Labour costs are usually suppressed because it's India. The erstwhile norm was to rely on unionized laborers for work, but migrants from the destitute states up north started coming en masse, which suppressed labor costs even further. As long as you give them a roof over their (families') head, 3 meals a day and a living wage to send back home to their village, they work reliably, especially when you need the manpower to guard against thieves or harvest season. Nobody I know uses heavy harvesting machinery except for cereals and some commodity vegetables - tech is mostly used for plant and livestock monitoring.
Yes and FDA started restricted the amount anyone can buy because some people started abusing it to the extreme. Now to get a 16mg dose, you would probably need a prescription
Starting at 40mg - thats sounds really high. I wonder whats the effect on the gut. Doesnt the food get backed up a lot which leads really really bad constipation or is that not as pronounced.
> BNF and Department of Health (England) don't describe addiction to loperamide, but do describe its use as an adjunctive treatment for people trying to come off opioids, which suggests it's not that problematic
As someone who suffers from IBS and takes loperamide regularly, while its not necessarily an addiction, I see forums of people (especially on /r/ibs) saying that it causes a dependency. I saw posts where people kept upping the dose until it got to a point where it doesnt work anymore and you would have to increasingly take larger amounts to have the same effect. Heck some take as many as 3 after every meal. I cant imagine doing that.
I try to avoid doing this and luckily I can get away with one every few days but I dread the day I have to be in that situation.
One thing I noticed is that - it gives me incredible mental boost a day after taking it. It just makes me feel normal and that to me is a 'boost'.
Yea atleast from personal experience with n=1, I think it does affect cognition and honestly I am glad it works that way and I discovered it lol. On other days when IBS is in full effect, I dread doing any work and have zero focus.
after an accident ~15 years ago, I was discharged after 6 months on 120mg of Oxycontin daily (40mg 3x a day) After being frustrated being tethered to the oxy bottle, I went cold turkey. The first thing that happened after the withdrawal symptoms subsided was I found I had chronic diarrhea. After years with my doctor trying different things, I found that the symptoms could be managed with about 16mg of loperamide. That was great for a while, until the FDA restricted the bottle size. At that point I could no longer buy enough over the counter, so I now have my doctor prescribing it for me. Unfortunately 16mg a day is the largest amount they can prescribe (IFAIK) so if it gets worse, I'll have to figure out another solution.
I'm not sure why this happened, but my suspicion is that while hospitalized I was infected by MRSA, and to try to get rid of it they were dumping some of the more toxic anti-bacterials into me to get rid of the MRSA (which took a year and a half to get rid of.)
Wow, cant imagine being in your situation. I would say try to ease yourself into lowering your dose slowly. I am not sure if its even possible with your situation but with IBS I try to control everything else including stress, food and sleep. I take loperamide if those dont work and it allows me to reset myself into being normal for sometime, that way I can retry. I try to go as long as I can without one and see if I can push myself. But I dont get too far due to work stress anyway.
Honestly the whole thing about people abusing it and FDA clamping down works against normal people who are genuinely using it.
Could you suggest resources (books, articles, videos, moocs or others) to learn good database design. I am picking up skills about sql but want to better understand and learn about databases. As someone who doesnt have that background, a lot of the times I am just googling for stuff and just trying out bits and pieces.
Apparently there's a 4th edition coming, but if you like the form-factor of a book-length text I'd throw a recommendation to "Database Design for Mere Mortals"[1]. I read the 1st edition from the late 90's, but I'd imagine it's still just as good. It approaches database modeling from a practical non-technical perspective, and I found it helped me learn data modeling in a software-agnostic manner, and later to influence how I talked to non-technical audiences about data modeling. I'm really glad to have found it early in my career.
I will echo what others have said. Data modeling is a force-multiplier type of skill. Combine it with a reasonable understanding of SQL and you can return a lot of value very quickly.
Not required, but knowing a little relational algebra helps queries make a lot more sense. A lot of the features like constraints and indices are very thin veneer over the underlying concepts.
At the other end of the spectrum, once you can write a few basic queries check out something like SQL Murder Mystery
https://mystery.knightlab.com/
This one is super-fun and lets you practice some basic to low-intermediate skills.
Fun fact: You can do relational algebra on plain text data (e.g., csv, as well as output of commands like ls, etc.) using only shell + piping + well-known shell tools.
The Art of Postgresql. As the title suggests, it's targeted for Postgresql. However it has a full section on data modeling, another section on data types. It's packed with lots of examples and reasoning. I feel it gives you a good mix of theoretical background and hands on immediate experience. You'll find your way around what is (in my worthless opinion) the best database engine, and the pgsql specific examples will mostly translate to other relational databases.
I'd like to know this as well. I think you'll just have to build things (potentially horribly) and fail.
I took three semesters of database (granted, baby database classes) and I still have no idea how you can do something pretty straightforward like creating a room reservation system.
If there is a reservation beginning at 10:15 AM and ending at 12:30 PM and someone tries to book a reservation from 10:00 AM to 10:30 AM, the transaction should fail.
Edit: and if you didn't want to use postgres, you could have "starttime" and "endtime" columns and reject any bad bookings with a before insert / before update trigger.
This approach is the best and works really well if you don't need to do a join on a related table to look up information. If you need to use data outside of the current table for exclusions/check constraints, you have to write a trigger function (as far as I know).
I had to solve this recently, where the actual start/end times were stored on a related table. I'm no SQL wizard, but I'd love to share my solution in case it helps others (it might be terrible).
Note: I changed the actual tables/domain to be generic, this is a poor example and it made more sense for my usecase, but this shows general approach.
-- Let's pretend we have these tables (awful design, but for sake of example):
-- room <-> reservation <-> reservation_info
-- Where "reservation_info" has "start_time" and "end_time"
CREATE FUNCTION check_for_overlapping_reservations()
RETURNS trigger
LANGUAGE plpgsql AS
$$ BEGIN
IF (
-- Find the newly created reservation and join it with the info record to grab "start_time" and "end_time" for check below
with this_reservation as (
select * from reservation
inner join reservation_info on reservation_info.id = reservation.reservation_info_id
where reservation.id = NEW.id
), bookings_for_timerange as (
-- Select every other reservation, where the reservation is happening in the same room
select * from reservation as other_reservation, this_reservation
inner join reservation_info as other_reservation_info
on other_reservation_info.id = other_reservation.reservation_info_id
where other_reservation.room_id = this_reservation.room_id AND
-- And the timerange from start to end overlaps the newly created record
tstzrange(this_reservation.start_time, this_reservation.end_time) &&
tstzrange(other_reservation_info.start_time, other_reservation_info.end_time)
-- Get a count of all the records, it should only be 1. If it's greater than one, there's overlap.
select count(*) from bookings_for_timerange
) > 1
THEN
RAISE EXCEPTION 'Room is already reserved during this time period';
END IF;
RETURN NEW;
END;$$;
TBH it's a bit more verbose and less performant than need be, but hey, if it works, rock on! But don't use 'select *' in production code.
Consider next time something like
if exists (select from sometable t1
join sometable t2 on
t1.resource_id = t2.resource_id
and t1.res_id <> t2.res_id
and tstzrange(t1.start, t1.end) && tstzrange(t2.start, t2.end)
where t1.res_id = new.res_id )
hold start & end time in normal DB columns, use business logic for your rule enforcement, have a query to identify rule violation. Maybe add constraints on your warehouse data but I probably wouldn't on the operational DB. I could be convinced to do so for the PoC because it might make sense, but what if you're managing thousands or millions of scheduled "resources" like a chain of libraries, or hotel rooms? What if you need to coordinate "leases"? DB-level is an OK place to start, but also one of the hardest to tease apart when you need to scale.
This is kind of the point of data modeling; you start with an idea, make it all pretty 3rd-normal form, define your projected indices and checks and constraints, then you mess it up a bit where it makes sense or you've had experience in the past.
Just about anything written by C. J. Date would be worth your while in this regard. It will give you a solid grounding in the relational model, which you can then apply to any RDBMS. Here's a good list to start with:
- Database in Depth, O'Reily (2005)
- Relational Theory for Computer Professionals, O'Reilly (2013)
- SQL and Relational Theory, 3rd Ed, O'Reily (2015)
- Database Design and Relational Theory, 2nd Ed, Apress (2019)
If you can find a copy of this, I'd recommend it
"Conceptual Schema and Relational Database Design: A Fact Oriented Approach" by Nijssen and Halpin. They presented a richer model (NIAM) for designing databases than the ER model by Codd/Date, though CJ Dates book is useful to. Both of these are out of print now, but anything by Halpin or Date would be a useful addition. To design databases relational theory and normal forms are the language you'd need to understand - they're not very hard though seems they aren't as widely taught any more.
As someone who only suffers from IBS, I have had good results from elimination and low fodmap diet. However stress and anxiety also have a pretty big and equal effect as diet. Both go together for me and even if one of them messes up it, I get a flare up kind of reaction.
If they have a number or publications as you say, they may be eligible to apply for O-1 visa. I know a couple of people who received it and (in my opinion) got it for less than what you may think of as good technical merit
My understanding is that O-1 visas require very specifically tailored applications to qualify. (I too have heard stories of how moderate achievements are twisted/massaged to be pitched for the O-1 application, and worked.)
I know several brilliant new/junior professors who are nevertheless on the H-1B track. My point is that H-1B is far and beyond the default and most common visa for introducing foreign working talent, and others like O-1 and EB-1 are the rare, rare exceptions.
> My point is that H-1B is far and beyond the default and most common visa for introducing foreign working talent, and others like O-1 and EB-1 are the rare, rare exceptions.
EB-1 is an immigrant visa and, aside from being smaller in number than H-1B, was already halted along with immigration generally on April 22, and this order extends the immigration halt through December as well as adding a few nobimmigrant visa categories to the halt.
EB1 is not a visa, but a category to get green card. It stands for employment based, priority 1. Irrespective of how your green card application will be prioritized, you still need a visa. Typically, people under L1A (intra company managers), O1 visa get to apply for green card under EB1 and rest under EB2 or EB3.
> EB1 is not a visa, but a category to get green card. It stands for employment based, priority 1.
No, it stands for “Employment Based, First Preference”, and you can go tell U.S. Citizenship.and Immigration Services that it's not a visa, because they think it is.
Employment-Based Immigration: First Preference EB-1
[…] You may be eligible for an employment-based, first-preference visa if you are an alien of extraordinary ability, are an outstanding professor or researcher, or are a certain multinational executive or manager.
You can still apply for an EB-1/2/3 Green Card while on O-1 status and apply for Adjustment of Status. The consequence of it not being dual intent is that you can't travel with the pending I-485 until you obtain an Advance Parole document.
Ah, maybe I'm missing some subtleties. I was referring to "you're not supposed to have intent to immigrate on a X visa", which never seemed to matter as I personally applied for H1-B and a greencard while on a J1
Only ~20,000 O-1 visas were issued in 2019, compared to 190,000 H1B visas.
The reason for this is because the O-1 visa is significantly harder to qualify for. The same people who would expect would be in the running for an O-1 (master's and postdoctoral students) apply for an H1B, in large part because the bar for the O-1 is just that high.
It’s less than what you may think it is. It also highly depends on your lawyer, I know a couple of people who you may think may not qualify but their lawyers ended up writing a lot of stuff (not made up obviously, just lawyer like language that drags on) and they ended up getting the visa. Out of those one of them got an rfe but they still pursued on and qualified. EB1 on the other hand is far harder.
Thinking about it as an immigrant, just the same way as the H1B: why punt on it if it is this variable? And why even depend of this? The entire problem is that immigration isn't working as it is supposed to. If even this can be gamed, what's the point?
I suppose you're getting downvoted because people don't like the answer. O-1 visas are absolutely attainable. Look at the evidentiary criteria for O-1A visas: "Authorship of scholarly articles in professional journals or other major media," "Published material in professional or major trade publications or major media," "Authorship of scholarly articles in professional journals," and "Original scientific, scholarly, or business-related contributions" are among the qualifiers, and are natural parts of a career in these fields.
In fact, enumerating the criteria here is useless, because almost all of them pertain directly.
O-1 is hard as heck. Not only do you need a very strong publication record but you also need a history of doing things like serving on program committees for conferences.
I think the people that get the jobs as tenure track assistant professor at good research universities can usually qualify. At least the young professors I knew didn't have any issues. Graduate students and post docs are usually already doing those types of services now also.
False. All you need is to prove your “exceptional qualifications” and that you would improve the country by working here. There are a number of ways to do that and conferences is just one possible way
I'm a hiring manager at a FAANG company and exclusively hire PhDs. The very first question that I try to answer when looking at a candidate who can't get OPT is "can this person feasible get an O-1". Then I bring a resume to the lawyers. I have a lot of experience evaluating whether somebody can feasibly get an O-1.
Just having a publication record is not enough. It needs to be a strong record and you need to have strong ties to the academic community through things like program committees. I've sadly had to turn down a lot of people who would easily improve the country by working here because their publication record isn't enough to get an O-1 visa.
I know three people who got it and one of them I wrote reference for. If my recommendation (among other things ofc) is sufficient I assume it’s not impossible =) Also you need good lawyer as with many such things
It is certainly possible. The point is that it isn’t easy. “This person has published novel research in a top conference and has a PhD from an internationally recognized university” is not a guarantee.
A few months in there were lots of red flags — 1. the director who is above my manager used to do code reviews and not my manager. He used to point out minor things (think linting or similar) such but was did not point out any major flaws in the code (I also reviewed others code) 2. Zero transparency- the director used to say he is going to give hints about professional development and used to ask random questions such as if I would be ok to move to another location etc - this was his prompting not mine. Hint based leadership leads to lots of water cooler talk among employees about what is going on.
About 8 months in, my entire team was laid off and my manager already about a month before that. It turns out I was only hired as a scapegoat to replace the negative morale in the team, people would start to leave because of previous layoffs so the director hired me so that he could tell others - ‘See, we are hiring right now’. In reality he had a 2 year plan of what he wanted to do.
I don’t mind layoffs I can find a job quickly but the biggest problems are for my family who I have had to relocate. After this I sweared I was never to work in SV again.
I now work on wall street, the team I work with is far more transparent and my manager is great.