text:
axelriet on July 3, 2019 | parent | context | favorite | on: A Kernel Engineer at Microsoft's Answer to "What D...
Thanks for the link, o for a bunch of new followers on Quora today and was wondering why :)
There are lots of good answers in this thread. In particular, someone took the time to look at the code, and that person wrote it only took them minutes to find similarities that make my opinion difficult to dismiss.
About the lack of documentation, consider that only a tiny fraction of the kernel's internals surface in the DDK. All our internal headers have a .w extension and are littered with directives like begin_ntddk, end_ntddk (and many others), so a large number of structures and many fields inside existing structures are hidden or replaced by a generic reserved field.
Macros names, parameters, etc. never appears in the compiled code. It is highly improbable (I studied math, "impossible" is not a word lol), almost surely impossible that a clean-room reimplementation ends up using macros for the same things, let alone macros with the same or similar names.
Also, consider that optimizing compilers emit code that is extremely hard to follow even for us. Heck, the debugger, together with the PRIVATE symbols that has the name of all private symbols, and the actual source code, has a hard time to sync with the disassembly with the code when stepping through. While it is possible to write code that behaves similarly seen from outside, it is again implausible that the expression of this behavior results in code that looks nearly identical to the original. Consider that the name of local variables is never part of the binaries, only public symbols are. Also, consider that the compiler aggressively optimizes out variables to reduce memory accesses and holds values in CPU registers as much as possible, so those variables, while conceptually present, don't really exist as such in the disassembled code. How to explain that a reimplementation comes up with the same variables, declared in the same order, when those variables are optimized out by the compiler?
What about in-line functions, both explicit and auto-unlined by the compiler? How do you even know there was a function in the first place, and how do you invent a name that is identical to the name of said function in the original code?
Funnily, I had a conversation with a very seasoned kernel engineer (I report directly to him) about ReactOS and my Quora reply. He told me the team looked into ReactOS some time ago and reached the exact same conclusions: impossible.
In particular, this person distinctly remembers a hack he implemented (I'm not going to reveal any details, but suffice to say it was in response to some assertion by some 3rd parties that something Microsoft declared in a court of law as very difficult). He explained the hack to me in full details and, boy, hacky that was, and they found the same hack in ReactOS's code, except that the présumer authors of that "clean room" implementation probably have no idea regarding why the hack was there.
Finally, "clean room" takes another sense when one knows that Alex (yes) worked for Microsoft until spring 2019 at least, as a contractor for a company called Cloudbase Solutions SRL. His Microsoft email address was v-alione@microsoft.com. I don't know if he had access to the ntos code, or NTFS or anything else, but very close from home he was, for sure.
So to those who want to take my opinion to court, I say it's a "careful what you wish for" type of thing, but again I'm not a lawyer, and in other regards ReactOS aligns with a very old version of the NT kernel. It is possible (my opinion only) that Microsoft does does not care?
acqq on July 3, 2019 | next [–]
> Consider that the name of local variables is never part of the binaries, only public symbols are.
"Never" and "only public" are wrong in the statement above, because non public symbols were indeed released by Microsoft.
I guess you are young enough not to know that Microsoft accidentally did release some NT builds with the names of the internal variables, and such builds were intentionally made with less compiler optimizations, allowing for easier reversing. Such events of releasing the internal names resulted in some very interesting stories and statements:
https://en.wikipedia.org/wiki/NSAKEY
"_NSAKEY was a variable name discovered in Windows NT 4 Service Pack 5 (which had been released unstripped of its symbolic debugging data) in August 1999 by Andrew D. Fernandes of Cryptonym Corporation."
kerng on July 3, 2019 | parent | next [–]
Also, the Windows code is under shared source license for nearly 20 years. Not really some sensitive secret thing or crown jewels that many want us to believe.
admax88q on July 3, 2019 | root | parent | next [–]
Sure and the source code has also been leaked before. But a "clean room" implementation is not allowed to look at such things.
wazoox on July 3, 2019 | parent | prev | next [–]
Back in NT3.x times, for quad-processors machines, and IIRC even NT 4.x with 8-processors machines (like AXEL crazy SMP monsters) Microsoft shipped windows NT as code, and you had to compile it on the machine it was to run on.
axelriet on July 3, 2019 | parent | prev | next [–]
Microsoft does not release the kernel's private symbols, trust me on that. But yes there was some leaks in the past, small portions of NT4 and W2K were leaked, I think I link to a Google query pointing to articles discussing the leaks in the Quora reply.
tiraniddo on July 3, 2019 | root | parent | next [–]
Well that's categorically untrue. Sure they don't release private symbols intentionally but they have done in the past accidentally. At that point it becomes a bit of a grey area, undoubtedly leaked/stolen source code is a no-no but reversing from private symbols when they do leak seem harder to quantify as you still need to reverse engineer the code, just structures/names etc are already known.
Private symbols are not the only way of gleaning more information, other examples I can think of are:
* Checked builds (prior to Win10). These builds shipped de-optimized kernels (e.g. no inlines) typically with copious debug strings which gave away important details. For example I gleaned a lot of knowledge of ALPC MSRPC from the checked build of rpcrt4.dll from Windows 8.
* SDK/DDK headers, especially in the brave new world of insider previews with preview SDK/DDKs there is sometimes information present which should not have been released including "private" information. Again bit of a grey area.
* The private symbols MS do ship. For example a significant proportion of the COM runtime has private symbols, intentionally. You can extract from those a surprising amount of system call structure information.
I'd recommend watching Alex Ionescu's talk at OffensiveCon about how he does reverse engineering on Windows to see many of these things in action. https://www.youtube.com/watch?v=2D9ExVc0G10
I'm not saying any of this would make it a clean-room re-implementation but to say ReactOS cannot possibly have been reverse engineered without just up and copying source isn't true.
edit: Formatting.
axelriet on July 3, 2019 | root | parent | next [–]
I'd love that you point to an instance where the private symbols of the kernel actually shipped?
It is very possible that some private symbols were part of some leak, but stolen data does not qualify as "shipping" :)
Again, I stand behind my opinion. I eyeballed some of the code side-by-side and there was portions where I could literally see a line-by-line correlation, which I can hardly explain.
Then if reversing the kernel is so doable using legitimate means, why ReactOS is still largely stuck in the early 2000's, coincidentally where the major leaks happened?
The private symbols have in the past ended up on the public symbol server (and quickly taken down), they have ending up "shipping" in public symbol packs. I can't point to specific incidents as the links to them no longer exist. This is why I said accidentally as they were not released as a conscious effort on MS's part.
However you seem to want to claim the only place those symbols can come from is being stolen. Of course in this case you use leak as a synonym for stolen, bit leak can just as much mean they were released accidentally by the owner, MS can't steal their own private symbols and release them on the web. I'm sure there's some symbol files traded in private scenarios which are actually taken through non public means but there have been actual incidences of public release of private symbols.
I'm not trying to claim that ReactOS is clean, I have no skin in the game from a project or user perspective. For all I know it might have lifted significant portions of its code from stolen source code or the WRK (which isn't stolen in so much as used without permission, which I'd regard as a totally different thing). I do however take exception to the typical software engineer's view there are somethings which cannot be reverse engineered into a almost similar form.
As to why ReactOS is stuck in the early 2000s, it could be because of all the source code which was stolen and put wholesale into the project. Although if that was the case I'd have expect MS would have sued the living shit of the project by now. It could also be because Windows was and is a very complex OS with many layers which if you're trying to re-implement with a team of 10s to 100s versus 1000s it's going to take a lot of time. It's seems unlikely that the project would spend the millions of man hours to create the abomination that is UWP.
Perhaps the best way to determine if ReactOS is unclean is for MS to open source the Windows Kernel, hell why would you even need ReactOS then :-)
edit: Cleanup.
That sounds reasonable (symbols inadvertently leaked). This would be a plausible explanation for at least some of the naming similarities.
zzzzzzzzzzz on July 3, 2019 | root | parent | next [–]
https://www.youtube.com/watch?v=2D9ExVc0G10&t=9m53s
acqq on July 3, 2019 | root | parent | next [–]
The above link points to: "OffensiveCon19 - Alex Ionescu - Keynote - Reversing Without Reversing" and to 9th minute of the talk where it's very relevant to the current discussion.
Someone pointed to that earlier. Great talk about how he gathers information to write his books.
acqq on July 3, 2019 | root | parent | prev | next [–]
See again what I quoted up in the thread related to the NSAKEY:
"Windows NT 4 Service Pack 5 (which had been released unstripped of its symbolic debugging data)"
anticensor on July 4, 2019 | root | parent | prev | next [–]
ReactOS goes greater lentgth to preserve backwards compatibility.
teddyuk on July 3, 2019 | root | parent | prev | next [–]
Often hotfixes came with private symbols, Microsoft has traditionally been very slack on this.
I've seen private symbols for sql server with the guid to switch editions published on the public symbol server for at least 6 months before they were pulled.
Full releases and service packs typically are stripped very well but if you are saying that no private symbols have been published to the public symbol servers then you are incorrect.
The only product that has been effective at stripping symbols traditionally has been office, they were always stripped if you could even get hold of them which was unlikely.
Don't forget also you could download the checked windows builds which were very open.
realusername on July 3, 2019 | root | parent | prev | next [–]
> Then if reversing the kernel is so doable using legitimate means, why ReactOS is still largely stuck in the early 2000's, coincidentally where the major leaks happened?
Because they don't care or need about the newer MS stuff and also don't have the resources either.
Also they can exploit Microsoft good record of backward compatibility, once you have a good enough lower API compatibility, you can just install a lot of newer MS tech directly on top of it.
kazinator on July 3, 2019 | root | parent | prev | next [–]
> Sure they don't release private symbols intentionally but they have done in the past accidentally.
Even if that is the case, it's an incredibly poor idea to use them, so that the code ends up with spurious similarities in spite of being (otherwise) cleanly developed.
simias on July 3, 2019 | root | parent | prev | next [–]
Are you arguing that MS mistakenly releasing a version of Windows with debug symbols didn't happen or that it constitutes a leak and isn't fair game?
Because the former is fairly well documented and the latter doesn't seem right in the context of this discussion. If MS themselves messed up and published the symbols through an official channel that's fair game IMO. Although obviously IANAL etc... I'm talking from an ethical perspective, not a legal one.
I don't know much about ReactOS or the NT kernel but we have this type of controversy regularly in the emulation scene and while sometimes it's true that people reuse docs they shouldn't have, a lot of the time people underestimate the skill and cunning of reverse-engineers to figure out how things work without having access to any restricted information.
mikekchar on July 5, 2019 | root | parent | next [–]
Kind of late to the game here, but MS could ship actual source code and copying that code would still be copyright infringement. Reverse engineering for inter-operability is legal in many places, but copying implementations is not. Even having seen the code, you would have to reimplement it in a way that worked equivalently, but was different. The OP is claiming that even things like macros have the same implementation and names (i.e. code that is never exposed publicly in any way). Even if you could deduce this from debug symbols (which would be quite tricky, but probably not impossible), you've got to find another way to do that work.
I don't really subscribe to a belief of absolute morality, but in the context of the discussion, I think that no matter how you got access to that code, if you say that you are reverse engineering it, then copying an implementation is not doing what you are saying you are doing (as well as being copyright infringement).
close04 on July 3, 2019 | root | parent | prev | next [–]
> Are you arguing that MS mistakenly releasing a version of Windows with debug symbols didn't happen or that it constitutes a leak and isn't fair game?
I think he's saying that even having access to leaked or accidentally released originals is not implicit permission to use it freely. Otherwise any piece of software that was ever legitimately released would be fair game, just throw it at a decompiler and profit.
If you're making a clean room design having so many similarities to the original is unlikely to happen accidentally.
Anybody implementing a clean room design should theoretically have no prior knowledge of the original's inner workings. The specs are written by one person, checked to not include any of the original material by a second one, before being passed to a third to be implemented.
From far enough a piece of wire and an isolation transformer do the same thing. The secret sauce is in that isolation, you can't just shunt it and pretend it's the same.
dingby on July 3, 2019 [flagged] | root | parent | prev | next [–]
You chuckleheads "released" pretty much everything in the ASSERT statements of checked builds until Windows Vista.
dang on July 3, 2019 | root | parent | next [–]
Personal attacks and name-calling, as here and in your previous two comments, are not ok on HN. We ban accounts that do that. It's great if you're providing correct information, but please edit out the swipes.
https://news.ycombinator.com/newsguidelines.html
jeditobe on July 3, 2019 | prev | next [–]
One small correction. On quora, you state that there is no such thing as public documentation for the NT kernel internals.
There IS public documentation for the NT kernel internals. It is called Windows Internals Book (https://amzn.to/2xCQla5) and has survived its' 7th Edition
bildung on July 3, 2019 | parent | next [–]
And one of the authors of said book is also quite a prominent member of the ReactOS team.
whereistimbo on July 3, 2019 | root | parent | next [–]
Did he work for Microsoft though? If yes, I wonder what kind of interaction between him and Mark Russinovich.
jeditobe on July 3, 2019 | root | parent | next [–]
No, he did not. Mark Russinovich also started to work on Microsoft only recently.
JaimeThompson on July 3, 2019 | root | parent | next [–]
Mark Mussinovich started working at Microsoft in 2006 according to Wikipedia https://en.wikipedia.org/wiki/Mark_Russinovich
Yep, you are right, https://www.linkedin.com/in/markrussinovich/
But still in 2006 ReactOS already had its 0.3.0 version and 8 years of existence ^) And book Microsoft Windows Internals, Fourth Edition has already been released in 2004
CRConrad on July 5, 2019 | root | parent | prev | next [–]
"Recently" is relative. I find 2006 pretty recent.
Now, Anders has been there a while already...
tozeur on July 3, 2019 | root | parent | prev | next [–]
His company got acquired by Microsoft
axelriet on July 3, 2019 | prev | next [–]
I cannot edit my comment for some reason, sorry for the typos. About my colleague's hack don't get too excited, this is ancient history but it was at the center of a public debate at the time. Some 3rd parties had an ask, the company said it was difficult, this was very true but someone inside came up with a very clever hack that satisfied all parties, the issue was settled and everybody lived happily ever after. It's just that the nature of the hack relied on very specific implementation details and it's highly improbably that another implementation would need a hack to begin with, let alone the same hack. It's one of the many coincidences that I believe will be hard to explain, shall someone really ask.
tinus_hn on July 3, 2019 | prev | next [–]
Most of the kernel code in Reactos is from far before Alex started working at Microsoft. Also the official Microsoft documentation is of course far from the only 'Windows Internals' documentation.
monocasa on July 3, 2019 | prev | next [–]
Microsoft has leaked tons of private variable names publicly though. See the whole _NSAKEY thing for one example.
iforgotpassword on July 3, 2019 | prev | next [–]
It seems like you're personally offended by the project. If some of the code that got presumably stolen is yours I can definitely understand.
Looking at how slowly that project is moving though I think your conclusion is right: They don't care. In some other comment you mentioned how the project seems to be stuck in the 2000/XP area. How relevant does that make this project today? But whether it's based on stolen code or not, it seems like the right choice to focus on getting that completed before moving on to everything that came after. And after all, Windows isn't just the kernel. They have to implement a lot of user space too, because software out there might assume it's available and behaving in very certain ways. Just an explorer clone sounds like a mammoth task on its own.
I still find the project very interesting and overly ambitious, even if code was stolen. I think at their current pace, reactos won't become usable before operating systems became largely irrelevant and everything runs in the cloud. Everyone still working on it today is probably just doing it for the challenge.
PeterGV on July 4, 2019 | prev | next [–]
This is news?
Of course it's not a proper clean-room copy. This is immediately clear to anyone who's worked on NTOS or who has source code license.
It been obvious for years. The only possible conclusion is that MSFT doesn't care.
AcerbicZero on July 3, 2019 | prev | next [–]
Anyone spending time giving detailed explanations regarding manual transmissions and engines in general deserves a follow :)
AtlasBarfed on July 4, 2019 | prev | next [–]
Microsoft complaining about ripped off source code?
You are the blackest pot in the history of computer software.
https://www.geek.com/news/microsoft-uses-open-source-code-54...
https://lwn.net/Articles/245805/
yarg on July 4, 2019 | parent | next [–]
It's BSD code in both examples. Given that the BSD license explicitly permits the sort of use in question, ripped off seems inaccurate.
Not that microsoft has never crossed any lines - even the naming of the Windows operating system seems morally dubious - but in this case I don't see any issue with what they've done.
dingby on July 3, 2019 | prev | next [–]
[flagged]
axelriet on July 3, 2019 | parent | next [–]
Thanks for the personal attack lol. I watched and did not learn much, except that he's a quite decent orator. I think what he describes is the process he uses to write his books.
MikusR on July 3, 2019 | root | parent | next [–]
In that talk he literary says how he got names of files and variables.
m0zg on July 3, 2019 | prev | next [–]
Uh-oh. Someone didn't check with MS LCA before posting this. Bad move.
I expressed my personal opinion, here and on Quora. I think I'll be fine.
s3arch on July 3, 2019 | parent | prev | next [–]
Can you please explain what is MS LCA?
glandium on July 3, 2019 | root | parent | next [–]
Legal & Corporate Affairs
mugsie on July 3, 2019 | root | parent | prev | next [–]
non existent - they are called by a different name in MS (and also have clear guidance for things like this, which was not broken)
m0zg on July 4, 2019 | root | parent | next [–]
Used to be LCA. Now CELA. I left in 2009.
hitekker on July 3, 2019 | parent | prev | next [–]
He needs to defend himself in internet court, employment be damned. /s
mapcars on July 3, 2019 | prev | next [–]
Why wouldn't you reply to ReactOS devs here pointing that what you are saying is clearly wrong?
Veen on July 3, 2019 | parent | next [–]
What would he say other than what he has already said? The ReactOS devs are not addressing the substantive points. No point in him repeating himself.
mapcars on July 3, 2019 | root | parent | next [–]
Em, for example how the book linked here several times is not documentation on kernel internals?
It's not documentation no. Some smart people spent a lot of time observing and disassembling and explained a number of things but major aspects are entirely missing, and not all of what is written is accurate. In any case this definitely is not documentation, and certainly not enough information to write not only a compatible implementation, but a compatible implementation with very similar-looking source code.
reuben_scratton on July 3, 2019 | prev | next [–]
I hadn't heard of ReactOS but a quick glance at it's kernel source on GitHub and it's OBVIOUSLY straight from Windows.
Not that I work for MS but I used to work on NT graphics drivers and had a copy of the leaked NT kernel source for a while (strictly for personal interest!). This so very like what I remember.
IMHO such blatant theft shouldn't really go unpunished.
ForHackernews on July 3, 2019 | parent | next [–]
I kind of doubt this is the case, because more than 10 years ago they had accusations of this sort and undertook an extensive audit and cleanroom rewrite: https://www.reactos.org/reset-reboot-restart-legal-issues-an...
michaelmrose on July 3, 2019 [flagged] | prev | next [–]
I find an opinion hard to credit when exact proof is sitting their on an open source repo everyone has access to and a closed source repo only you have access to.
You make a theoretically compelling argument like the "hack" you describe above and then leave out the only part that really matters where you prove it. It is entirely likely that you are simultaneously entirely correct and entirely unable to prove it due to company policy but this leads us to the next logical question.
If you knew you couldn't prove it why did you open your mouth? It seems the only result will be negative PR.
It appears you did not read what I wrote. The similarities are out there for anyone to see, there is plenty of leaked Windows code floating around including on GitHub, and I did not need anything else to form my opinion.
michaelmrose on July 3, 2019 | root | parent | next [–]
This was flagged for some reason. Please don't flag comments that don't violate community standards just because you don't like the author.
I have no intention of reading through millions of lines of code from a legally questionable source to make your point for you.
How about you do so and post an in depth analysis?
WhitneyLand on July 3, 2019 | prev [–]
Do you think senior management at MS believes your comments are a good idea or at best benign? Or do you think all the details of your comments have just not yet fully reached VP level, legal, and PR?
I'm thinking they'd disapprove. That's just a guess, maybe they think it's fine and great. However, it may be worth at least considering another possibility.
Does your company want random technical employees, making non-technical statements, about how people are "ripping off" MS?
It's your job to raise the flag internally and help people understand up and down the chain, and across functional lines the context and perceived severity of the issue.
It's your job to write a blog post about how great your containers are architected. Not be a lone wolf, self appointed spokesperson using inflammatory language on issues with potential legal implications.
Please don't take this comment in the vein of you're just an engineer shut up and code, in fact you have a critical role as someone with domain expertise.
The point is when you stumble onto a high visibility cross-functional issue, I've found on sensitive topics many organizations seem to appreciate when someone reacts by coordinating, discussing, and facilitating a cross functional, unified response with one designated voice, that acts in the best interests the company.
admax88q on July 3, 2019 | parent | next [–]
Why are you policing other company's employees and presuming to know what their job is?
WhitneyLand on July 3, 2019 | root | parent | next [–]
First off I'm not policing anything, because, how would I have the authority to do that?
Secondly you object to me presuming I know what his responsibilities are. I don't claim to know what he codes. However I'm able to make a pretty good guess about what the scope of a MSFT senior developers job is and this kind of thing is not even close, unless it's a special case worked out in advance with others. It wasn't worked out in advance in this case because he says that he made the comments before getting feedback from more senior people on his team.
Finally I assume some of the down votes have mistakenly conflated my comments with trying to hide information behind corporate walls.
I advocate hiding nothing - and fully support the new generation of companies who believe in transparency and ethics.
Being transparent and ethical has nothing to do whatsoever with letting developers try and make legal decisions when it's not their area of expertise. It also doesn't mean that a company shouldn't work together across departments to try to decide the right thing to do.
Good management and coordination between roles don't preclude transparency or doing the right thing in anyway shape or form .
This was a fairly pedantic post but I'll reply anyways.
> First off I'm not policing anything, because, how would I have the authority to do that?
Maybe policing isn't the right word, but your earlier post was fairly condescending to axelriet. "I think they'd disapprove... It's your job to do this... It's your job to do that..."
WhitneyLand on July 10, 2019 | root | parent | next [–]
It's subjective, but let's be real, you're probably right.
Moreover, I don't believe in such a philosophy between any two people, so to the extent it is I regret the tone of the comment.
If it makes any difference, the true source of the tone was based on thinking similar to, holy crap that person is backing up into a stove someone speak loudly and quickly... There is no evidence for you to believe that, but I hope you will, somehow, decide the intent was nothing more.
axelriet on July 3, 2019 | root | parent | prev | next [–]
My opinion about ReactOS has nothing to do with my job or my employer, you are trying to make this into something it is not.
Your opinion has a huge amount to do with your job and your employer.
Appeal to authority may be a classical logical fallacy, but it's a highly effective one and is used by many people to infer the merit of an opinion rightly or wrongly so. Yeah, I know it's weird, that people would associate a comment one person posts with the voice of a trillion dollar company. Just happens sometimes.
Moreover I have nothing to gain by trying to "make this into" anything.
Believe it or not, I actually hoped it could be of some help to you as another data point - as far as all the things you take into consideration when choosing how to exercise your bill of rights free speech, which has nothing to do with your corporate free-speech. The latter of which unfortunately has cost many people dearly.
With respect to Microsoft, I'm certainly not making any comment about them as a company one way or another. That wasn't the point because, this concept applies to most large similar tech companies.
Things do change rapidly at such companies. Fwiw, I have done your job, your bosses job, been the janitor, and a few other things there. Things may be different now, but i'm not making the most possible uninformed guesses just to mess with you.
I sincerely hope the truth is known and that there are no negative repercussions for you personally.
I'm not speaking in the name of the company: I expressed my personal opinion about ReactOS and wrote back in 2017 that I think it's a ripoff, after looking at their code. I'm not out there to destroy ReactOS, but if you ask me today what I think about it, I'll give you the same answer.
pcunite on July 3, 2019 | root | parent | next [–]
Axel,
Look at my HN profile and contact me, so I can send you an email and ask you something. Or, put a way to contact you in your HN profile.
brown9-2 on July 3, 2019 | parent | prev | next [–]
What is the point of comments like this besides aiming to seem smarter than the original poster? If you get your way then you would stifle open discussion and information.
forcemajeure on July 3, 2019 | parent | prev | next [–]
I like this honesty and transparency, employers such as Microsoft encouraging it's employees to act in this way is a good thing.
Shutting down discussion behind lawyers and bland public statements should be discouraged.
Waterluvian on July 3, 2019 | root | parent | next [–]
We like it. But it can be actively harmful to the interests of the company. And its impossible for us to have the facts required to know if this is harmful. That's up to the company. So if they decide to fire employees who are spending their free time harming the company, we can't really get upset about that.
Its simply impossible to say, "no but this openness is good for the company" in an informed way. But we can certainly hope the company comes to this conclusion and encourages openness.
WhitneyLand on July 3, 2019 | root | parent | prev | next [–]
Collaborating across departments with people from different functional areas has absolutely nothing to do with dishonesty or lack of transparency.
If you have good people in those positions in your organization, they will come together and make good decisions.
If you don't have the right people in those positions, then that's not going to be a good thing irrespective of my advice.
Transparency doesn't require anarchy and anarchy doesn't buy transparency.
dangerface on July 3, 2019 | parent | prev [–]
There are other jobs, would you really want to work some where that makes you afraid to have an opinion?


text:
Oregon surfer punches shark in gills in order to survive
Stephanie Yao Long

Joseph Tanner, who survived a shark bite while surfing on the Oregon Coast on Oct. 10, 2016, speaks with the media at Legacy Emanuel Medical Center in Portland, Ore., where he is a critical care nurse, Wednesday, Oct. 26, 2016. (Stephanie Yao Long/The Oregonian via AP)

PORTLAND, Ore. (AP) — Joseph Tanner was resting his arms on his surf board, his lower body dangling in the water, when something grabbed his right leg and yanked him under the waves.
In an instant, Tanner knew he was being attacked by a shark in the chilly waters off the northern Oregon coast and he wondered if he would die, he recalled Wednesday, nearly three weeks after the Oct. 10 attack north of Cannon Beach.
The shark had his leg in its jaw — a bite that would later measure 26 inches from his upper thigh to his ankle — and as Tanner struggled to break free, he remembered that he should try to punch the shark in the nose or poke it in the eye.
"I opened my eyes and there were gills in front of me. I can't reach the nose and I can't reach the eyeballs, so I just started hitting the gills," said the 29-year-old.
The shark released him and he screamed a warning to his friends who were surfing about 40 feet away, then began paddling to shore on his board.
He was terrified the shark was following him, tracking him by the blood streaming from his mangled leg.
Friends later told him he paddled about 200 yards — a five-minute ordeal — before catching a wave and riding it in for the last 40 yards, he said.
"I just paddled my life away. That was probably the scariest moment, trying to get back to the shore and leaving a trail of blood," Tanner said. "I couldn't lift up my arms anymore and I just rolled off my board in six inches of water and people came from all over."
Tanner, a critical care nurse at Legacy Emmanuel Hospital's intensive care unit, immediately began telling his rescuers what to do.
He directed them to make a tourniquet from a T-shirt and, when that wasn't tight enough, he told them to make another out of the leash from his board.
Six people used a surfboard like a backboard and carried him up a steep slope and over rocky ground to the parking lot above.
While they waited for help, Tanner had them call the ambulance and provide his blood type in case he needed a transfusion.
He also told them to cut off his wetsuit so paramedics could start an IV when they arrived.
All the while, Tanner could feel himself getting weaker, he recalled.
"I started getting lightheaded and that freaked me out because I know that's the first sign of shock," Tanner said.
When paramedics arrived, Tanner insisted that the rescue helicopter fly him to Legacy Emmanuel, where he knows the trauma staff.
"I remember being in the trauma bay and two of my co-workers were on either side of me. They were in drapes and lights and they literally looked angelic. It was like a breath of relief to see these familiar faces," Tanner said.
He required three surgeries and will need physical therapy, but the shark missed his bone and key nerves.
No one got a good look at the shark, but Tanner said he's been told by several experts that it was likely a great white, based on the jaw mark on his leg.
As he recovers, Tanner hopes other surfers can learn from his experience.
All surfers should know how to tie a tourniquet and know their blood type — and a thick wetsuit doesn't hurt, he added.
"I wore the thickest wetsuit that they sell," he said. "That wetsuit quite possibly saved my life."

redpajama_set_name: RedPajamaCommonCrawl


text:
> SOLD ITEMS SELECTED FROM OUR ARCHIVES
EDWARD ELGAR (1857-1934) Autograph Letter Signed
Name: EDWARD ELGAR (1857-1934) Autograph Letter Signed
SIR EDWARD ELGAR Autograph Letter Signed.
English composer.
ALS. 2pp with integral blank. Birchwood Lodge, Nr Malvern; Craeg Lea, Wells Road, Malvern. [No date but 1900]. To Kennerley-Rumford (the baritone singer and husband of Clara Butt).
"I shall be delighted to conduct the songs at Lloyd's farewell if such a thing can be permitted! I will write to Vert now and I don't think Richter can object. I should, of course, want to rehearse the orch[estra] but Mrs Kennerley-Rumford need not trouble to think of coming, we have done the songs so often together. Our kindest regards to you both. Always truly yours." With good full signature.
8vo. Approx 8 x 5 inches. Some creasing and browning to head of letter and with a very short tear at top edge not touching text. VG.
Richter is Hans Richter, the Austro-Hungarian conductor, one of Elgar's most fervant admirers. Vert is Nathaniel Vert, Elgar's concert manager. The "songs" are Elgar's celebrated "Sea Pictures". With Edward Elgar himself conducting, Clara Butt (Mrs Kennerley-Rumford) sang a few of the songs from Sea Pictures at the Royal Albert Hall on 12th December 1900 during the farewell concert to mark the retirement of the tenor singer, Edward Lloyd. The following year, Elgar conducted the songs at St George's Hall, Bradford beginning his long collaboration with the soprano, Muriel Foster. There were clearly contractual reasons why Vert and Richter needed to be consulted over the Royal Albert Hall concert on 12th December 1900. Edward Elgar was evidently quite keen to conduct but did not want to step on Richter's toes. In 1904, when Edward Elgar was feted with a festival of his music at Covent Garden, it was Clara Butt, again, who sang Sea Pictures while Richter conducted. The collaboration of Elgar's composition, Clara Butt's performance and the music by the Halle Chorus, with Richter conducting, was considered the pinnacle of the work.
Built by InstanteStore Ecommerce Platform


Report damage to, or removal of, a tree on private or public land.
Certain trees in Boroondara are protected. These trees can be on private property or in public spaces such as naturestrips, streets and avenues, or parks and gardens. Find out if a tree is protected for more information.
If you believe a tree on private property is being damaged or removed illegally now, call our Statutory Planning team on 9278 4888 so we can investigate immediately.
any photos of the works being carried out.
If you're concerned that a tree has been removed without permission, or has been deliberately or accidentally damaged, you can report it online.


text:
\section{Introduction}
\label{sec:intro}

Automatic audio classification is at the core of a wide variety of tasks in audio analysis and music information retrieval (MIR).
Improvements in audio classification models, especially deep neural network-based models, triggered the creation of large-scale datasets for audio classification, both for general purpose audio~\cite{gemmekeAudio2017} as well as for specific domains, such as musical instruments~\cite{humphreyOpenMIC20182018}. However, the larger the scale of data, the more difficult it is to annotate. One way for annotating large-scale datasets is by using services such as Mechanical Turk~\cite{humphreyOpenMIC20182018}. However, for crowd-sourced annotations, it may be impractical to annotate both the presence (positives) and absence (negatives) of each class for a large number of classes and audio clips. Thus, audio clips are often annotated partially, i.e., each clip may only be annotated with presence/absence of a few classes out of the set of classes.

We focus on the problem of missing labels in audio classification datasets. \Figref{label_types} illustrates the difference between partially labeled and fully labeled data. The conventional way to handle data with incomplete annotations is to treat missing labels as negative instances for the respective class (compare, e.g., \cite{fonsecaAddressing2020a,hersheyCNN2017}) since there is no obvious alternative way to handle this. The Audioset~\cite{gemmekeAudio2017}, for example, a large audio dataset available for audio classification, labels each clip only with a few `present' class labels. It is, however, unclear whether all of the remaining classes are indeed `absent.' As pointed out by Fonseca et al., this is problematic since the missing labels can mean either present or absent instances~\cite{fonsecaAddressing2020a}.

\begin{figure}[t]
  \begin{minipage}[b]{1.0\linewidth}
    \centering
    \centerline{\includegraphics[width=.7\columnwidth]{figs/label_type_new.pdf}}

    \caption{An example of a music clip along with complete and partial labels.}
    \label{label_types}
  \end{minipage}
\end{figure}

For example, an audio clip which contains a `trumpet' and a `saxophone' may only be labeled with the trumpet class. Treating the missing saxophone label as negative (no `saxophone') represents a mislabeled example from the point-of-view of an audio classifier and may negatively impact its training.
Thus, it is important to investigate approaches capable of handling data with missing labels. Moreover, methods capable of leveraging missing labels enable composition of larger datasets by combining existing datasets even if their label sets may not fully overlap.
The main contributions of the paper are as follows:
\begin{inparaenum}
  \item We identify a problem in music and audio tagging tasks which is often overlooked in research tackling the respective task: existing methods do not account appropriately for partially labeled data.
  \item We compare two semi-supervised learning approaches to handle missing labels.

  In contrast to other works on semi-supervised audio classification, which divide datasets into labeled and unlabeled, we deal with homogenous multi-label datasets where each data point has at least one class label.

  \item We evaluate these methods using large publicly available datasets from different domains: OpenMIC, and SONYC-UST.
These datasets are both partially labeled and consist of music and urban sound recordings, respectively, thus helping us understand the behavior and effectiveness of the presented methods on diverse sets of audio.
\end{inparaenum}

\section{Related Work}
\label{sec:format}

Training models with missing labels has been the subject of several machine learning studies. Semi-supervised learning (SSL) is particularly useful where there is limited labeled data.
Most SSL work tends to utilize large image datasets such as CIFAR100, or SVHN~\cite{tarvainenMean2018}.
Typically, labeled and unlabeled partitions are created ad hoc by discarding labels from images in the unlabeled set.
Recent work in sound event detection has also applied SSL approaches in a similar fashion, with the goal to improve models trained with small fully labeled data and large unlabeled data~\cite{akiyamaMultitask2019,luSemiSupervised2019}. Similarly, Kum et al.\ presented variations of noisy student-teacher learning approaches for vocal melody extraction~\cite{keum2020semi}. They utilized a small labeled dataset combined with a larger unlabeled dataset for this task.
Our paper, on the other hand, focuses on data from the same collection or dataset where each sample is partially labeled. This setting represents the state of various large-scale audio tagging datasets and is hence an important problem to solve.

Only a few studies address the problem of missing labels in audio classification.
Meire et al.\ studied the effect of varying degrees of missing labels for matrix factorization and convolutional neural network (CNN)-based models~\cite{meireImpact2019}. They found that the CNN failed to outperform the NMF-based approach for cases with few labeled samples in a synthetic dataset.
Fonseca et al.\ utilized the student-teacher paradigm and a masked binary cross-entropy (BCE) loss to address missing labels using a proprietary version of the Audioset~\cite{fonsecaAddressing2020a} with positive and explicit negative labels.
Gururani et al.\ utilized a partial BCE loss to ignore missing labels in the OpenMIC dataset while training models for musical instrument classification~\cite{gururaniAttention2019}. While they address missing labels, they only do so by omission.

\section{Partially Labeled Datasets}
\label{sec:pagestyle}
The main reason for missing labels in audio datasets is the difficulty of annotating audio. It is non-trivial for the human ear to instantly identify several sound events in a single audio clip. This is in contrast to labeling an image where salient objects can be easily identified with a quick scan. The problem is exacerbated for music recordings since most instruments overlap in time and may have similarities in timbre.

A typical setup for audio annotation involves asking annotators whether a certain class of sound event or musical instrument is active in a given audio clip~\cite{fonsecaFSD50K2020, humphreyOpenMIC20182018}. A listener has to listen to the entire audio clip in order to annotate. Depending on the length of the clip, this may take a few seconds to several minutes. This drastically increases the cost of annotations. This challenge can be overcome for specific data (e.g., letting the annotators skip silent parts in the case of urban or environmental sounds), but is not possible in the case of music where audio clips typically have active instruments for a majority of the time. These constraints lead to only a limited amount of annotations for each audio clip in large-scale multi-label audio datasets.

We choose two partially labeled datasets for our experiments. Both datasets share the property that they have positive and negative labels for each class. The negative labels are equivalent to `explicit negatives' as referred to in \cite{fonsecaAddressing2020a}.

The SONYC Urban Sound Tagging (SONYC-UST) dataset\footnote{Version 2.3.0, DOI 10.5281} is a dataset of urban sounds collected using an acoustic sensor network in New York City \cite{cartwrightSONYC2020}. The dataset consists of $13538$ training, $4308$ validation, and $669$ test recordings, each of \unit[10]{s} length. Each recording is annotated with the presence or absence of $23$ classes of urban noise. The SONYC-UST is approximately $94\%$ labeled.

The OpenMIC dataset is a large-scale, multi-instrument music dataset with a diverse set of instruments and genres, addressing issues in other datasets for the task~\cite{humphreyOpenMIC20182018}. It consists of $20000$ \unit[10]{s} audio clips. Each clip is extracted from a unique song in the Free Music Archive~\cite{defferrard2017fma}. Each clip is labeled with the presence or absence of least one of $20$ musical instruments. The dataset is weakly labeled implying that instrument labels do not indicate the precise activity in time of the instrument in the audio clip. If the dataset was completely labeled, the number of labels would be $20000 \text{ clips} \cdot 20 \text{ instruments} = 400000$. However, the number of labels in the dataset is $41268$, showing that approximately $90\%$ of the labels are missing.

\section{Methods} \label{sec:method}

We present two methods geared towards addressing the challenge of missing labels. These methods belong to different categories of semi-supervised learning algorithms. The first method can be loosely categorized as self-training while the second method is based on consistency regularization.

\subsection{Method 1: Label Enhancing (LE)} \label{sec:method_LE}
Label Enhancing is a method proposed by Fonseca et al.~\cite{fonsecaAddressing2020a}. LE involves two stages of model training. In the first stage, a teacher model is trained using the label set $Y_n$ such that all missing labels (implicit negatives) are treated as explicit negative labels. In the second stage, an enhanced label set $\bar{Y}$ is obtained using the teacher model's predictions $S$ for the missing labels. \Figref{LE_arch} illustrates the LE algorithm. In contrast to traditional self-training where missing labels are replaced by model predictions, here the enhanced label set is created by masking out certain implicit negatives during training of the student model. The mask is generated as follows:
\begin{align}
    \mathcal{M}_c = \begin{cases}
        0, & \text{if label is missing and $S_c >=\tau$ }\\
        1, & \text{otherwise},
    \end{cases}
\end{align}
where $\mathcal{M}_c$ and $S_c$ denote class-conditional mask and model predictions, respectively. The threshold $\tau$ is obtained using $\gamma$ percentile of teacher predictions for missing labels in each class. The authors argue that the implicit negatives with a high value for model prediction are likely to be missing positives. Thus, removal of these labels forms an enhanced label set $\bar{Y}$, which is finally used to train a student model.

\begin{figure}[!t]
  \begin{minipage}[b]{1.0\linewidth}
    \centering
    \centerline{\includegraphics[width=6.5cm]{figs/method_flowcharts_LE.pdf}}

    \caption{Overview of the two stage Label Enhancing (LE) method.}
    \label{LE_arch}
  \end{minipage}
\end{figure}

\subsection{Method 2: Mean Teacher (MT)}

MT is a popular consistency regularization-based (CR) semi-supervised learning (SSL) algorithm. CR-based SSL works on the principle that a model should output consistent predictions for perturbed or noisy versions of the same input. These perturbations can vary from simple dropout~\cite{bachmanLearning2014} to various data augmentation methods~\cite{berthelotMixMatch2019,sajjadiRegularization2016a}.

Formally, the consistency loss term can be written as~\cite{tarvainenMean2018}:
$
    \mathcal{J}_\mathrm{CR} = \expect{{\mathbf{x}}, \eta, \eta'}{\mathcal{D}(f(\mathcal{T}(x), \theta, \eta), f(\mathcal{T}(x), \theta', \eta'))}, \label{J_CR}
$
where $\mathcal{D}$ is some distance function, $f$ represents the computational graph of a deep neural network with parameters $\theta$ and stochastic noise (dropout) $\eta$, and $\mathcal{T}$ is some data transformation or augmentation function to inject noise in training data. The network with parameters $\theta$ is the student model, and the network with parameters $\theta'$ is the teacher model. In our experiments, we only utilize dropout as the source of stochastic noise.
In MT, the teacher model weights $\theta$ are the exponential moving average (EMA) of the student model weights $\theta$ after every training step:
$\theta'_t = \alpha\theta'_{t-1} + (1-\alpha)\theta_{t}$
where $\alpha$ is the EMA weight.

Thus, the student model is trained with both:
\begin{inparaenum}[(i)]
    \item the BCE loss $\mathcal{J}_\mathrm{BCE}$ which utilizes the labeled data, and
    \item the consistency loss which does not require labels and is well suited to data with missing labels.
\end{inparaenum} The final loss function is:
  $\mathcal{J} = \mathcal{J}_\mathrm{BCE} + \beta\ \mathcal{J}_\mathrm{CR}$,
where $\beta$ is a hyperparameter that decides the weight of the consistency regularization term.
Meanwhile, the teacher aggregates the student model by averaging the student weights as the training progresses. \Figref{MT_arch} illustrates the MT method.

\begin{table}[t]
  \centering
    \caption{L: number of hidden layers, H: hidden size, D: dropout}
    \label{tab:hparams}
    \begin{tabularx}{\columnwidth}{s|b|b}
      \heading{ }  & \heading{OpenMIC}                            & \heading{SONYC-UST}                          \\ \hline
    Model   & L: 3, H: 128, D: 0.6               & L: 1, H: 512, D: 0.6                \\ \hline
    Optimizer     & \multicolumn{2}{c}{lr: \{0.001, $5e^{-3}$\}, weight decay: $1e^{-5}$}          \\ \hline
    Other & $\gamma$: 10\%, $\alpha$: 0.999, $\beta$: 3 & $\gamma$: 95\%, $\alpha$: 0.99, $\beta$: 3
    \end{tabularx}
\end{table}

\section{Experimental Setup}
\label{sec:exp}

We train our models to identify presence or absence of sound classes: musical instruments in case of OpenMIC, and urban sounds in case of SONYC-UST. These are multi-label classification problems. The setup for instrument classification closely follows the study by Gururani et al.~\cite{gururaniAttention2019}. We use the macro-average F1-score to evaluate performance which takes into account data imbalances.
The setup for urban sound tagging is the same as the baseline system for DCASE 2019 Challenge Task 5.\footnote{http://dcase.community/challenge2019/task-urban-sound-tagging}
For evaluation, we use the micro- and macro-average AUPRC to be consistent with the challenge.
Code to reproduce the experiments is made publicly available.\footnote{https://github.com/SiddGururani/audio\_missing\_labels}

\begin{figure}[!t]
  \begin{minipage}[b]{1.0\linewidth}
    \centering
    \centerline{\includegraphics[width=.6\columnwidth]{figs/method_flowcharts_MT.pdf}}

    \caption{Overview of Mean Teacher (MT) approach.}
    \label{MT_arch}
  \end{minipage}
\end{figure}

\subsection{Baseline Systems}\label{baselines}

\subsubsection{Baseline 0 (B0)}
Missing labels are treated as negative labels. This method is common in audio classification research involving datasets like the AudioSet~\cite{kongAudio2018} since it only contains positive/presence labels~\cite{fonsecaAddressing2020a}. It is often a forced choice due to the data collection procedure. Additionally, since the focus is usually on devising improved acoustic models, the nuances of the label collection process tend to be ignored.

\subsubsection{Baseline 1 (B1)}
Missing labels are ignored or masked in the loss function during training, a naive way of handling missing labels~\cite{gururaniAttention2019}. Compared to B0, this protects against learning from incorrect negative labels. Loss masking is utilized in the LE method during the training of the student model, as well as in the MT method for the supervised loss function.

\subsection{Model Training Pipeline}

Pre-trained models extract the features used as model inputs.
The OpenMIC data is processed using the VGGish model to obtain 128-dimensional embeddings for every \unit[0.96]{s} of audio~\cite{hersheyCNN2017}. Similarly, the OpenL3 library~\cite{cramerLook2019} is used to extract features for SONYC-UST. 512-dimensional embeddings are extracted for every \unit[1]{s} of audio. No geo-spatial and temporal information from SONYC-UST is utilized.
All methods presented share the same attention-based model architecture. This model solves a multiple-instance learning problem and uses attention mechanism as an aggregation/pooling strategy. It achieved state-of-the-art performance for Audioset classification as well as multi-instrument classification~\cite{kongAudio2018,gururaniAttention2019}. \Tabref{tab:hparams} displays the hyperparameters. Adam optimizer is used.
Publicly available data splits are used for training and testing. For OpenMIC, 15\% of the training data is sampled randomly to form the validation set. Validation loss is used to for model selection.

\section{Results and Discussion}

\Figref{fig:boxplots} confirms that treating all missing labels as explicit negatives~---the B0 approach commonly used in audio classification research---~leads to significantly worse performance compared to the other approaches for both datasets and for almost all runs. B1, on the other hand, is a more competitive baseline. This can be attributed to the fact that it addresses missing labels by omission.
\begin{figure}[!t]

    \centerline{\includegraphics[width=.8\columnwidth]{figs/boxplots_fixed.pdf}}

    \caption{(i) OpenMIC results, (ii) \& (iii) SONYC-UST results. Each experiment is replicated 5 times to obtain the boxplots.}
    \label{fig:boxplots}

\end{figure}

The key difference between the two datasets is that OpenMIC has a small proportion of labeled data while the SONYC-UST has a much larger portion of the dataset labeled.
While MT outperforms other methods on OpenMIC, there is no clear winner between MT and LE on SONYC-UST. While the average performance of both MT and LE is higher, there are runs where B1 and B0 are able to match their performance. It is likely that LE and MT methods are unable to benefit from the small number of missing labels in SONYC-UST.
It is worth noting that the hyperparameter $\gamma$ requires tuning for the LE method to perform well. MT, on the other hand, achieves strong performance with suggested hyperparameter settings.

To further investigate, we simulate more missing labels in SONYC-UST. We randomly remove $\{10, 20, 40, 80\}\%$ labels and redo the experiments. Figure~\ref{fig:trend} shows the effect of varying amounts of missing labels on the different algorithms. While it is expected that performance drops with the reduction in labeled information, LE's performance does not drop significantly. The LE method relies on creating an enhanced label set by removing the most confused missing labels, which leads to the student model being trained with potentially more accurate labels. Similarly, MT and B1 do not deteriorate as drastically as B0, reaffirming that even a naive approach of handling missing labels is better than simply treating them as missing.

Note that MT requires that we know which labels are missing. This is a drawback since certain datasets, such as Audioset and MSD, may only have positives and implicit negatives. The LE method is effective in these cases since it attempts to predict which of the implicit negatives are explicit negatives.

\section{Conclusion and Future Work}

Our paper brings to the fore a common but often overlooked challenge faced in the task of audio classification: partially labeled large-scale data. We show that treating missing labels as negatives, or ignoring/masking missing labels during training often leads to bad performance. LE and MT are both strong candidates for learning with partially labeled data. The main difference between the two is that MT needs to know which labels are missing, while LE does not require this information. Our results demonstrate the ability to leverage missing labels, which has implications on the collection of annotations for audio data. Dataset creation can be simplified since comprehensive annotations are not required and partially labeled data may be sufficient to learn good models for audio classification.
In future work, we plan to study the relationship between the proportion of missing labels and LE's hyperparameter $\gamma$. Additionally, we plan to combine the two approaches, utilizing consistency regularization in both stages of the LE method, potentially leading to cleaner enhanced label sets for the student model.

\begin{figure}[!t]
  \begin{minipage}[b]{1.0\linewidth}
    \centering
    \centerline{\includegraphics[width=8cm]{figs/trend.pdf}}

    \caption{Effect of increasing the amount of missing labels}
    \label{fig:trend}
  \end{minipage}
\end{figure}

\bibliographystyle{IEEEtran}

redpajama_set_name: RedPajamaArXiv


Enjoy Sulfate-Free Volumizing Shampoo is a highly concentrated shampoo that gently cleanses your hair and scalp while providing incredible volume and fullness. Great for fine or limp hair that craves moisture and body.
Apply shampoo, work into hair and scalp and then rinse. For more intense lather, repeat the process.


text:
Get the LOVE factor and become irresistible!
We've all heard about the X factor, the one that can turn your life around over night and bring instant success or fame. But what about the LOVE factor, the one that makes some people so appealing to the opposite sex that they're never single, alone and miserable?
You know some people have it, you've met a few, but could you pinpoint what it is that makes them so irresistible? Sounds like a tough question, but let's see if we can find the answer.
Usually there's nothing special about them. Most often such people are surprisingly ordinary, no supermodel looks, no genius brains, their careers and social status are also not impressive...but they always have that one thing we envy them for. They're never alone. Their significant others seem to be way out of their league, but are totally smitten with them, and you just can't help but wonder:
Why can't this be me?
Well, for one because you're asking yourself this very question.
There is no reason in the world for you to think that finding the right person is a wild goose chase and that you're undeserving of love and attention.
However, this can mean two things: that you still haven't discovered how amazing you are, and that you're preventing yourself from experiencing love, probably because you're afraid of getting hurt. But, if you REALLY want to be that person, here's what you should do to unlock that potential:
Fall in love!
"Fall in love? Seriously?! Are you kidding me?!"
Although these were your first thoughts, yup, no kidding here - you gotta fall in love!
Fall in love with yourself!
Of all the loves in this world, loving yourself is the best. Hug yourself whenever you have the chance and tell yourself "I love you!". This is not only going to help your self-esteem but it will make you laugh every single time. It will also help you accept yourself and love yourself more.
How you can do it?
Even though you might think there aren't many reasons to love yourself, think again! You're one of a kind, you are kind, compassionate, funny, trustworthy….feel free to add to the list. See? These qualities sound like some pretty good reasons you might fall in love with someone, so why not start from yourself?!
If you're still unconvinced, this is what you need to do:
Uncover your hidden potentials!
It is said that Cleopatra was not as nearly as beautiful as she was fatal for men. That means she didn't rely on her looks but her personality to win them over. Put your best characteristics forward and see how all of a sudden you're receiving much more attention from the opposite sex than before.
And what could be your winning card?
What people are mostly attracted to is the attitude, the way we sit, eat, walk and talk. Work on these. You can do it in a restaurant, or at the office, at the gym, grocery store... anywhere.
For example, sit in a cafe, somewhere close to a window or a mirror where you can observe yourself. Watch how you look when you pick the glass to your lips, how you sit, are you upright or slouching… Find the posture and pose that you feel comfortable and confident in. Practice conversations with people. Choose topics you're knowledgeable about. Tell jokes you'd like to hear.
What it all comes down to?
It's the overall impression that makes you attractive - you being you is the ultimate LOVE factor. Laugh, find pleasure in your everyday life - in the ride or walk to work, the chirruping of birds, the music you play before going to bed or getting up in the morning.
Cook a good meal, treat yourself, go shopping, dancing, running -in a nutshell - live your life!
Don't overthink, don't overanalyze and most importantly, don't take yourself so seriously.
As simple as all of this sounds, it takes time for most people to learn that indeed things can be simple.
If you've found some of this inspiring we'd like to hear from you. Tell us in the comments what you think the LOVE factor is for you and share your story to help others find it too.
What Is a Positive Body Image and How to Build Yours
Love Yourself Affirmations
Dating Confidence Affirmations
Download Your Free Self-Esteem Affirmations Album
Join over 30,000 people who have already experienced the benefits of this wonderful album!
First name: Email address: Url (Please Leave Blank):
Yes, send me my free gift!
We never send spam - read our Privacy Policy
The Power of Affirmations
Money and Success
Why the Law of Attraction holds more common sense than you think
Feeling old? Here are the top tips to rejuvenate your entire being
The only 3 advice you need to stop smoking forever
What Are Positive Affirmations?
Why Are There Three Different Sets of Affirmations?
What Is the Best Way to Listen?
Free Affirmations MP3
Copyright Trinity Affirmations™. All rights reserved.
Disclaimer: Do not listen to our audio whilst working with machinery, whilst driving, or in any situation when your attention is required elsewhere. We accept no responsibility for use of our albums in such situations. The testimonials/endorsements included in this website abide by word of mouth marketing standards. We believe in honesty of relationship, opinion and identity.


text:
Applied products
Hue University of Sciences welcomed Prof. Aoki Shinichi from Sojo University, Japan
The Architecture Festival in University of Sciences
Working with the Delegates from Tartu University, Estonia
The 11th National Conference on Geography
Cooperative activities between Hue University of Sciences and Yamaguchi University
The delegates of the University of South Carolina's visit to Hue University of Sciences
MOU signing ceremony between Hue University of Sciences and Brycen Co., Ltd. and Astrodesign company
Opening Ceremony of International Master Course on Environmental Science, Joint Educational Program between University of Sciences, Hue University and Savannakhet University, Lao PDR
Starting up the Europe – Asia cooperation project in the framework of STEM education program
Faculty of Biology
Faculty of Chemistry
Faculty of Environmental Science
Faculty of Geography and Geology
Faculty of History
Faculty of Journalism and Communications
Faculty of Literature and Linguistics
Faculty of Physics
Faculty of Sociology
Request a new one here
The Rector's trip in Japan
From February 9 to February 14, 2019, Assoc. Prof. Hoang Van Hien, the Rector of Hue University of Sciences paid the visit to some companies in Japan according to the invitation of Brycen company. The delegation also included Mr. Nguyen Kim Dung – Former president of Hue City Party Committee, Mr. Bao Minh – Vice Chairman of Japan - Vietnam Center cum Director of ABM Limited Liability one member Commerce and Tourism company, Mr. Hoang Trong Nam – representative of HCC company. From Brycen Vietnam LLC, there were Mr. Masaru Fujiki – Chairman, Mr. Kazuaki Terunuma – Vice Chairman and other members.
TH 22-02-2019
Working with Mr. Noritomo Hato, Representative of Ritsumeikan University, Japan in Vietnam
In the morning of 23th January, Assco.Prof. Hoang Van Hien, Rector, University of Sciences, Hue University had a meeting with Mr. Noritomo Hato, Representative of Ritsumeikan University, Japan in Vietnam.
Reception of the representative of National Taiwan Normal University (NTNU)
In the morning of January 18, 2019, the Vice Rector of Hue University of Sciences Assoc. Prof. Ha Van Hanh received Prof. Hsiang-Lin Liu, Vice President in charge of international affairs of National Taiwan Normal University (NTNU)
Workshop on Training the field of Computer and Information Technology in English
On December 20, Hue University of Sciences successfully organized the workshop on training the field of computer and information technology in English.
Visit of Rajabhat Sakon Nakhon University, Thailand
On December11, Assoc. Prof. Vo Thanh Tung, the Vice Rector received the visit of 68 delegates of Rajabhat Sakon Nakhon University led by Assoc. Prof. Jitti Kittirertpaisan, Dean of the Faculty of Business Management.
Working with Canvas Gate, Inc
In the morning of October 29th, Assoc. Prof. Hoang Van Hien – Rector of the University of Sciences, Hue University (HUSC) hosted a meeting with Mr. Kazuyoshi Aoki – General director of Canvas Gate, Inc.
Phan Thị Như Ý 30-10-2018
Visit of Counselor of Science and Technology, Taipei Economic and Cultural Office in Vietnam (TECO)
In the afternoon of October 10, Prof. Tung-Yi Lee – Counselor of Science and Technology of TECO, together with Ms. Le Thi Thu Hong – Assistant, paid a visit to University of Sciences, Hue University (HUSC). Assoc. Prof. Hoang Van Hien – Rector of HUSC and Dr. Phan Tuan Anh – Deputy Head of the Office for Science – Technology & International Relations also attended the meeting.
Study tour on building the dynamic and creative curriculum at universities in Europe
From 23 September to 29 September 2018, the delegation of lecturers and students of Hue University of Sciences joined the study tour at Turku University Applied Science (Finland) and Manchester Metropolitan University (the United Kingdom) regarding the dynamic and creative curriculum approaching a sustainable and intelligent city within the framework of the project on Sustainability Alliance of Urban Networks in Asian Cities – SAUNAC.
Meeting with Yamaguchi University, Japan and Saranaree University, Thailand
On September 23, Assoc. Prof. Ha Van Hanh, Vice rector of Hue University of Sciences cordially received the delegation of Yamaguchi University, Japan and Saranaree University, Thailand.
HUSC Rector receives the Ambassador of the Republic of Germany to Vietnam and the Head of Deutscher Akademischer Austauschdienst- DAAD Regional Office Hanoi for Vietnam-Cambodia-Laos-Myanmar
On September 19th, Rector of HUSC Assoc. Prof. Hoang Van Hien hosted a reception for the Ambassador of the Republic of Germany to Vietnam Christian Berger and Mr. Stefan Hase-Bergen, Head of The DAAD Regional Office Hanoi for Vietnam-Cambodia-Laos-Myanmar.
MOU signing ceremony with the Institute of Labour and Social affair training
On 13 September 2018, Assoc. Prof. Hoang Van Hien, Rector; Assoc. Prof. Vo Thanh Tung, Vice Rector and Dr. Huynh Thi Anh Phuong, Dean of the Faculty of Social Work participated in the MOU signing ceremony on "Program on training and fostering human resources and scientific research" between Hue University of Sciences and the Institute of Labour and Social affair training.
Page 2/15 < 1 2 3 4 5 ... 15 >
Introduction Organizational structure Contact us
Hue University of Sciences. Add: 77 Nguyen Hue st, Hue city, Vietnam.
Powered by PHP-Fusion. Designed and edited by nlhhuan.


Gathering Flames is initiated in Didenhil. Locate the Crafting Hall and speak to Murdoc Hain about using reagents to create potions of fire to kill Boggarts.
Gather Scarwood Bark in the area north of Didenhil, and Tindertwig from Ironhold Passage; use those reagents to make a Blazing Salve (the minor one will do), and you will be able to complete this mission. This task seems to be continuous.


text:
Caylin Moore
Author, Rhodes Scholar & Aspiring Professor
Celebrated author and sought-after inspirational speaker, Caylin Moore invigorates audiences with wisdom from his journey of overcoming seemingly insurmountable obstacles to striving to leave the world better than he found it. His against-all-odds journey from the cruel poverty of a gang-ridden Los Angeles community to becoming a Rhodes Scholar is detailed in his acclaimed book, A Dream Too Big: The Story of an Improbable Journey from Compton to Oxford. His work has been featured by Good Morning America, Sirius XM Radio, ABC News, NBC LA, Home and Family, Hallmark Channel, and The 700 Club amongst other media outlets. His book was named a Good Morning America Anchor's Favorite Books of 2019, was an Amazon Bestseller in Sociology of Urban Areas and came out in paperback in June of 2020. Read More >
A burgeoning thought leader, Caylin seeks to reform the way we think about and respond to gang membership, education and urban poverty. His experiences growing up in Compton and South Central Los Angeles inform his scholarly interests. By taking advantage of the limited educational opportunities in his community, Caylin excelled through high school and college to become a US-UK Fulbright Summer Institute fellow at the University of Bristol and a Public Policy and International Affairs Junior Summer Institute fellow at Princeton University amongst other prestigious academic awards and fellowships. As a student-athlete at Texas Christian University, he became founder and president of S.P.A.R.K. a community outreach organization encouraging youth to pursue education as a means of community uplift. Caylin's sustained mentorship and engagement with disadvantaged communities has led his work with S.P.A.R.K. to be featured as part of his November 2016 ESPN cover story and recognition as a member of the 2017 AllState Good Works ® Team.
Caylin went on to become a 2017 Rhodes Scholar, graduating from the University of Oxford in England, where he earned his Master's of Science in Latin American Studies. Caylin is currently earning his Ph.D. in Sociology at Stanford University and is a Ford Foundation Fellow, aspiring to become a university professor. Caylin's research agenda examines urban neighborhoods, criminal justice policies, and how such policies impact community social networks. Thus far, his research appears in the Annual Review of Criminology (2022) and the Oxford University Press Handbook of Gangs and Society (2022).
Caylin Moore has garnered much praise for his keynote speaking abilities and his gift of storytelling. He connects with a broad spectrum of audiences, as he works closely with clients to customize his speaking to align with the objectives of a particular event. Whether he is speaking about A Dream Too Big, the collaboration between education and community, dealing with pressures to succeed, carving out meaning, navigating higher education as a person of color, or dream inequality, his presentations are rich with actionable takeaways and leaves audiences awe-inspired. Caylin has spoken at a multitude of high-impact venues: non-profit organizations such as the NCAA, community organizations such as the Community Action Association of Pennsylvania, and institutions of higher education such as Yale University, Johns Hopkins University, Ole Miss, and the University of Texas at Austin to name a few.
As a testimony to his power to communicate through writing, notable figures have praised A Dream Too Big. #1 New York Times Best-selling author Ron Hall called his book "an inspiring tale that should be mandatory reading for every student, parent, and anyone else interested in the success of those who will shape and define our future." New York Times Best-selling author Wes Moore said, "Caylin's story is not just inspirational, it is instructional." Emmy-Award Winning Anchor of Good Morning America and Pro-Football Hall of Famer Michael Strahan said, "What an inspiring story. How he was able to use his wits and his smarts to stay out of trouble and to excel in life... I thought that this book needed to be put out there in the forefront because you can never have a dream too big to accomplish." Caylin's story proves that there is no such thing as a dream too big. Read Less ^
Caylin Moore discusses his new book "A Dream Too Big" | Home & Family
Caylin Moore dishes on his inspirational new memoir 'A Dream Too Big' | GMA
GMA Holiday Reading Roundup List: A Dream Too Big
A Dream Too Big
A Dream Too Big: The Story of an Improbable Journey from Compton to Oxford
In this inspiring keynote, drawn from his acclaimed book A Dream Too Big: The Story of an Improbable Journey from Compton to Oxford, Caylin Moore shares his against-all-odds journey from the cruel poverty of gang-ridden Los Angeles to becoming a Rhodes Scholar attending Oxford University. Caylin's story is one that could have led him to gangs and prison: a hungry child, kept awake at night by the sounds of gunfire and the scratching of rats and roaches. Instead, by holding onto hope and embracing his mother's steely faith in education, he rose above his circumstances to reach the pinnacle of academic achievement as a Rhodes Scholar and future college professor. #1 New York Times Best-selling author Ron Hall called his book "an inspiring tale that should be mandatory reading for every student, parent, and anyone else interested in the success of those who will shape and define our future." Best-selling author Wes Moore said, "Caylin's story is not just inspirational, it is instructional." Caylin's story proves that there is no such thing as a dream too big.
Finding My Way & Carving Out Meaning
The process of finding out what you want to do and who you want to be should be approached with care and guidance, not angst and pressure. This talk provides an alternative philosophy to finding your way, that centers around gainful experiences and exposure that lead to the pursuit of inspirations and passions. Caylin Moore discusses his winding path, his inspirations, and how they have led him to a fulfilling career choice as a future college professor. His curriculum examines journaling, goal setting, the outlining of values, exploration of ideas and goal review. This talk is ideal for high school and college students, and those that have a vested interest in these students "finding their way and carving out meaning."
Dealing with Pressures to Succeed
Mental health experts find that the pressures for children to succeed are more intense and begin earlier than ever. Considering the ramifications of this perfectionistic culture, this is a perfect speech for students, as well as teachers and parents who are looking to relieve this devastating pressure. Caylin Moore, who was under incredible pressure to rise above poverty, opens up to discuss a healthy relationship between personal ambition and personal life, and focuses on the importance of our inspirations and reasoning behind pursuing our goals. He explores genuine self-development, as opposed to "trophy collection" and "resume building," and provides tools and tips for self-care.
Navigating Higher Education as A Person of Color
Caylin Moore has developed a sharp awareness of how systemic inequalities can affect an underrepresented student's ability to thrive from research and lived experience. As he explains how he found his sense of belonging as an African-American male student-athlete coming from inner-city poverty, he pushes back against the pressures of the "Be twice as good, expect half as much" narrative. In this talk, Caylin explains his process of eschewing "imposter syndrome" and explains how he responded to his multiple adversities in pursuit of his dream of helping his community. This speech is perfect for university organizations interested in decolonizing academic spaces, championing diversity and inclusion, and equipping students of color with tips, tools, and the inspiration to achieve.
The Collaboration Between Education & Community
Caylin present critical insights to the collaboration between educational institutions and community organizations, and how these forces can be a "saving grace" in a young person's life. Drawing upon lived experience in inner-city Los Angeles and scholarly research, he provides a sobering and refreshing discussion into how both of these forces have the potential to interact and cultivate youth for the better. He also provides tips and tools for those that engage with youth who face daily challenges. This speech is perfect for community organizations and educational institutions who want to understand the efficacy of their work and how it can one day produce change-makers, lifesavers and even, Rhodes Scholars.
Dream Inequality: It's Difficult to Dream Here
Drawing on his first book A Dream Too Big and his theory of "Dream Inequality" Caylin Moore illuminates some of the internal and external factors that limit dreaming for many youth in impoverished and adverse circumstances. It is difficult to envision one's self as a success at most anything, if you have learned to expect incarceration or death at an early age. This talk will provide context, and expert tools and tips to anyone who has an opportunity to embolden youth to expand their vision of themselves and pursue their dreams.
Pathways Created Through Fellowship & Scholarships
Caylin Moore discusses the pathways created through fellowship and scholarships. His success in winning the Rhodes Scholarship, US-UK Fulbright, and other prestigious awards allows him to provide unique insights into the preparation, application and interview processes. Bridging the chasm between Compton and Oxford was no light feat. Like many students, especially those coming from underrepresented backgrounds, he had to first understand that he belonged and had to convince himself that he was more than worthy of applying. Caylin centers this talk on his process of self-belief, the changes he is inspired to see in the world, and tools and tips for success for those who are interested in these opportunities.
"Everyone LOVED Caylin! Not only did I listen, I did the introduction and lead the Q&A. Caylin was an absolute pleasure to work with."
- NCAA
"I just wanted to let you know that Caylin was absolutely PHENOMENAL at both our Luncheon and our teacher event the day before. Our guests loved him, and he was so captivating! I really appreciate your help and coordination!"
- Small Steps Nurturing Center
"Everyone I have heard from was incredibly impressed with him. He had done some research on who were are and tailored his presentation accordingly. I thought that speech hit home. I loved his speech."
- Washington State PTA
"The event was excellent – Caylin was engaging and the students asked tons of questions!"
- Providence College
"Caylin was everything I was hoping for. My attendees were completely bowled over by his story told in a down to earth, sincere manner. He is a delightful young man who genuinely listens to others and comes across as someone you want to root for. He cares about others – its obvious in every interaction he had. He just blew everyone away. One attendee told me Caylin was the best speaker we've had in 12 years (and we've had some good ones!) Such a special person."
- CEO, Community Action Association of Pennsylvania (CAAP)
"The members of our Board that attended that event were so impressed with him and would like to consider having him speak again at our annual Youth of the Year gala."
- Boys and Girls Club of Collier County
"There are no words!!!! I want you to know I don't give compliments lightly. Let's see if I can say this briefly: In the 20 years I have been at FSU and 4+ keynote addresses annually, this is the one keynote message I will carry forth as much in my heart as in my mind. I'm not embarrassed to say I think the experience was 'life altering' for our students and attendees. So relatable and down to earth. Our students rallied around him and I've received nothing but the highest compliments for FSU from his speech. I expressed my reaction directly to Mr. Moore following the ceremony and hope he knows how seriously I meant those words. I received as much personally as any student, faculty or staff attending."
- Fayetteville State University
New York Times Best-Selling Author & Former CEO, Robin Hood Foundation
Steve Pemberton
Chief Human Resources Officer, Workhuman & Best Selling Author
Myron Rolle
Pro Football Player, Rhodes Scholar & Humanitarian
Dr. Sampson Davis
Physician & Inspirational Leader