First there were the initial use cases that didn't make much sense to me. 

1. There wasn't anything else out there that did this. -> (*cough* *cough* 
thymeleaf)

2. That it allowed you to separate front end and back end developers so that 
back end developers wouldn't be thrown by the complexities of creating html in 
the manner that the designer wanted. -> I've never experience that, ever. If I 
had a developer who couldn't figure out how to make html he wouldn't be working 
for me long. 

3. It allowed it to be pure html with no custom tags. So that you could just 
take the html that a designer gave you and plug it in -> That didn't last long.

So I was like fine. It'll be a tool in the tool chest and that if it was that 
good it would eventually be the thing that everyone uses. Then BAMM all of a 
sudden it's the only official way of creating components in AEM. There's people 
posting on Stackoverflow how it's "best practices." Throw a stone at an AEM 
consultant and he'll yelp "HTL" 

Now, in part I get this. It depends on the use case. If you're a consultant or 
a freelancer this makes sense. Your dealing with clients who are throwing a 
design to you that they've mocked up in some design software.  Where they want 
to have you create a set of pages, this kind of feature makes sense that you 
could go thrown cut out the html and add functionality to it so that the final 
page works with the CSS the designer created. 

That's never been my use case. I've always done long term projects where I'm 
building up a suite of components that are re-used across tenants. I don't get 
a request for a page. The designers are in the system and are customizing 
components that have already been created or working with the authors and 
developers to create a very specific component that has all of 2 or 3 layer of 
html.

Having a separate person to just render that structure in a component would be 
a waste of time and resources.

Does that matter? No. Remember the consultants? Remember the only official way 
of doing things? If I have a problem with a component... why aren't you using 
HTL? Bring in a consultant, "you can save money/time by using HTL", really I 
looked at it, it doesn't help me. "But.. but... best practices"

Then they whip out contextual rendering. Which, quite honestly is great, I 
don't need to manually do the encode stuff anymore. That alone makes it a nice 
to use and something to consider. Although it could also have been done in the 
rewriter and then you would have had encoding done everywhere without regard to 
the script creating the html but that's a separate conversation.

So that's why I resent it. I dislike blind followers who use the phrase "best 
practices" because they can't articulate the real reasons to do things. I 
resent being told that all of the work that I've been doing should be redone 
for reasons that don't logistically or financially make sense. Yet at some 
point I'm going to do just that because at some point my team needs to 
understand HTL to work with it.

Heh, the cult of HTL is strong enough I've probably talked myself out of future 
job positions. But I've never been one not to state an opinion.

[/RANT]

- Jason

On Wed, Oct 31, 2018, at 9:58 AM, Radu Cotescu wrote:
> Hi Jason,
> 
> There’s nothing wrong with that. Any Script Engine that we have in Sling 
> is just a tool in the chest. :)
> 
> Can I ask, though, why do you say it was forced on you?
> 
> Thanks,
> Radu
> 
> > On 30 Oct 2018, at 21:07, Jason E Bailey <j...@apache.org> wrote:
> > 
> > Since this is a public record, I'm going to clarify myself.  I don't 
> > dislike it. I resent it. And the way it felt like it was forced on me for 
> > no good reason.  However, in it's own right,  it's a decent solution.
> > 
> > - Jason
> > 
> > On Tue, Oct 23, 2018, at 12:42 PM, Jason E Bailey wrote:
> >> 1. I don't use HTL
> >> 
> >> 2. When I last mucked with HTL, and this could have changed, it had 
> >> problems itself with HTML5
> >> 
> >> 3. When I've used the rewriter it's because I need something centralized 
> >> that is modifying HTML with out regard to where the  HTML is coming 
> >> from.
> >> 
> >> 4. I dislike HTL
> >> 
> >> 5. I really dislike HTL
> >> 
> >> - Jason
> >> 
> >> On Tue, Oct 23, 2018, at 12:33 PM, Carsten Ziegeler wrote:
> 

Reply via email to